首页> 中国专利> 设备客户化家庭网络顶层信息体系结构

设备客户化家庭网络顶层信息体系结构

摘要

一种用于在连接到网络系统的多个多种设备中生成控制当前连接到网络的各设备的用户接口的方法和系统。该网络系统包括物理层和连接到该物理层的多种设备,其中物理层提供可由各设备用来相互通信的通信媒体,多种设备中的一个或多个设备存储包括设备信息的信息。多个多种设备中的每一个设备都包括代理服务器,适用于:(a)从当前连接到网络的各设备获取信息,该信息包括设备信息;(b)至少根据所获取信息,在一个或多个设备中的每一个设备中生成用户接口描述文件,每个设备中的用户接口描述文件包括与当前连接到网络的各设备中的每个设备的设备信息相关联的至少一个参考文件;和(c)各自根据所述一个或多个用户接口描述文件,在连接到网络的能够显示用户接口的一个或多个设备上,显示一个或多个用户接口,用于使用户控制当前连接到网络的各个设备。

著录项

  • 公开/公告号CN1322355A

    专利类型发明专利

  • 公开/公告日2001-11-14

    原文格式PDF

  • 申请/专利权人 三星电子株式会社;

    申请/专利号CN00801995.9

  • 发明设计人 王冬岩;理查德·赫普莱曼;

    申请日2000-07-27

  • 分类号G11B20/04;

  • 代理机构柳沈知识产权律师事务所;

  • 代理人吕晓章

  • 地址 韩国京畿道

  • 入库时间 2023-12-17 14:02:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-08-21

    专利权有效期届满 IPC(主分类):G11B20/04 授权公告日:20070704 申请日:20000727

    专利权的终止

  • 2007-07-04

    授权

    授权

  • 2001-11-21

    实质审查的生效

    实质审查的生效

  • 2001-11-14

    公开

    公开

说明书

                        技术领域

本发明涉及网络领域,尤其涉及具有与其相连的多媒体设备的家庭网络。

<受版权保护资料的范围申明>

本发明文本所公开内容的一部分包含受版权保护的资料。版权所有人不反对在本发明内容公开成为专利与商标局专利文件或记录文档时由任何人传真复制本发明内容,但除此之外,无论何种情况,都保留所有的版权。

<对相关内容的交叉引用>

本申请人申明受益于1999年7月27日提交的题为《网络体系结构(Network Architecture)》的美国临时申请No.60/146,101以及1999年8月17日提交的题为《包含在家庭网络顶层用户接口规范中的外部万维网服务器(External Web Server Included in Home Network Top-Level User InterfaceDescription)》的美国临时申请No.60/149,515,这两个申请在此被引用为参考资料。

                           背景技术

一个网络一般来说包括通信链路和连接到该通信链路并具有通信能力的多种设备。这些设备包括计算机、外部设备、路由器、存储设备、和具有处理器和通信接口的设施。网络的一个例子是用于家用装置(household)的家庭网络,其中多种设备被相互连接。通常的家用装置包含几种家电设备,包括个人计算机和通常能在家里找到的家电设备(home devices)。所述的术语“家电设备”通常包括逻辑设备或其它具有能够交换数据的功能的器件,并且,不仅可包括所有的家电设备,而且包括一般用途计算机。“家电设备”包括多种电子设备,如安全系统、家庭影院设备、电视(TV)、VCR、音响设备、以及直接广播卫星服务或(DBSS)-它也被称作数字卫星服务(DSS),“家电设备”还包括消防系统、照明系统、微波炉、洗碗机、烤箱/灶具、洗衣机/干衣机、以及汽车中的处理系统。

一般而言,家电设备的用途是提高房屋主人的生活格调和生活水平。例如,洗碗机洗刷弄脏的碗碟,使得房屋主人不必用手来洗碗。VCR记录电视节目使得房屋主人能够以后观看特定的节目。安全系统保护房屋主人的财产,减轻了房屋主人对非法侵入的担心。

家电设备,诸如家庭影院设备,常常通过单一的通用控制器件即遥控设备来控制,这种单一的通用控制器件允许房屋主人能够采用单一接口来控制和命令几种不同的家电设备。于是,许多制造商开发了通过单一接口来控制和命令几种不同家电设备的控制器件。

使用遥控器件来命令和控制家电设备的一个相关缺点是,遥控器件提供用于控制和命令每个家电设备的静态控制和命令逻辑。因此,特定的遥控器件只能控制和命令在遥控器件中包含用于家电设备的必要控制和命令逻辑的那些家电设备。例如,如果一个遥控器件包括用于控制电视(TV)、磁带录像机(VCR)和数字视频设备(DVD)的逻辑,但没有用于光盘(CD)器件的逻辑,则不能采用该遥控器件来命令和控制该CD器件。此外,随着新的家电设备的发展,该遥控器件将不能控制和命令新的家电设备,原因是这些新的家电设备所要求的控制和命令逻辑在开发该遥控器件时是未知的。

此外,遥控器件通常只能被用于命令和控制在该遥控器件的信号范围之内的家电设备。因此,用户不能从房屋中的单一位置使用遥控器件来控制和命令相互连接但位于家中不同地方的家电设备。例如,位于楼上卧室中的VCR可以连接到位于楼下客厅(family room)中的电视上。如果用户想要在位于楼下客厅中的电视上播放包含在位于楼上卧室中的VCR中的录像带,则该用户不能从单一位置控制和命令电视和VCR这两者。

使用遥控器件的另一个相关缺点是,已知的遥控器件不能控制多个多种各样的设备,尤其是不能控制具有为完成多个任务或提供一服务而相互通信的不同能力的多个设备。此外,常规的网络系统不能提供用于使不同网络设备中的软件应用程序自动相互通信以在没有直接用户命令的情况下完成多个任务的机制。

为解决上述问题,有些网络模型在一个包括用于联网设备的静态设备信息的设备中提供有中心/单一用户接口(UI),该静态设备信息用于使用户控制网络设备。然而,在这种网络中,设备中设备信息(例如,图标(ICON))的改变要求顶层页(top level page)的改变和重建。此外,如果设备变得不能显示中心用户接口,则用户不能再控制网络。中心/单一页的另一个问题是,每个UI设备必须显示相同的页,并且,没有对每个制造商提供生成其自己的UI外观和感觉的范围,也不能改变UI设备中使用的技术。表示一设备的图标/信息的内容不能被改变,并且,UI设备不能对设备图标(比如用于该UI设备本身的图标)显示更引人著目的外观。UI创建工具不也能从外部万维网入口(Web Portal)获得电子商务(e-business)图标。这种模型不能被标准化为工业应用,因为中心/单一UI设备控制着UI。

因此,需要一种在家庭网络中提供动态控制和命令设备的方法和系统。还需要这种方法和系统对连接到该网络的一个或多个设备提供独立生成不同用户接口的能力,这些用户接口代表连接到网络的各个设备,用于进行用户命令和控制。

                       本发明的概述

本发明能够满足上述需要。在一个实施例中,本发明提供了用于在连接到网络系统的多个多种设备中生成用户界面的方法和系统,所述网络系统用于控制当前连接到一网络的各设备。在一种形式中,该网络系统包括物理层和连接到该物理层的多种设备,其中该物理层提供可由各设备用来相互通信的通信媒体,所述多种设备中的一个或多个设备存储包括设备信息的信息。多个所述多种设备中的每一个设备都包括一个代理程序(agent),该代理程序适用于:(a)从当前连接到网络的各设备获取信息,所述信息包括设备信息;(b)至少根据所述获取的信息,在所述一个或多个设备中的每个设备中生成用户界面描述文件(description),每个设备中的用户界面描述文件包括与当前连接到网络的所述各设备中的每个设备的设备信息相关联的至少一个参考文件(reference);和(c)各自根据所述一个或多个用户界面描述文件,在连接到网络的能够显示用户界面的一个或多个设备上,显示一个或多个用户界面中的每一个界面,用于使用户控制当前连接到网络的所述各个设备。

在一个例子中,网络设备顶层UI描述文件是由任何网络设备单独生成的,必须一定是由能够显示UI的设备(UI设备)生成的。在每个设备中生成一用户界面,而不是生成中心UI,就能允许设备优选地在GUI上显示其自已的设备图标/文本。此外,每个GUI是制造商客户化的、用户可构造的、并且是更可靠的,因为其不依赖于另一个设备,例如单一中心服务器。

附图的简要说明

通过参照下面的描述、所附的权利要求和附图,将能更好地理解本发明的这些和其它特征、方面和优点,附图中:

图1示出本发明网络的一个实施例的体系结构的一例框图;

图2示出本发明网络的另一个实施例的体系结构的一例框图;

图3示出本发明的可用于在家电设备之间进行通信的分层接口模型的一个例子;

图4A示出在本发明的一个网络中,对能够显示用户接口的DTV客户机设备重播视频的DVCR服务器设备的一例体系结构图;

图4B示出在本发明的一个网络中,与能够显示用户接口的客户机设备进行通信的服务器设备的另一例体系结构图;

图5-6示出表示联网设备对用户的各功能的顶层GUI例子;

图7示出按照本发明另一个实施例构造的家庭网络的一例体系结构框图;

图8示出用于在IP地址结构的1394网络和非1394网络之间进行通信的本发明的处理过程的一个例子;

图9A-C示出在按照本发明另一方面的一个网络中,在找寻系统(discovery system)体系结构的一个实施例中,到数据和控制位的连接关系的功能框图例子;

图10示出在与图9A-C的功能框图连接的家庭网络中,用于找寻和配置代理服务器的流程图例子;

图11示出在与图9A-C的功能框图连接的家庭网络中,用于用户接口代理服务器的流程图例子;和

附录1-4是下列各项的示例:(1)顶层页描述文件250(附录1);(2)Background.htm(附录2);(3)Icon.htm(附录3);和(4)Name.htm(附录4)。

为便于理解,尽可能在所有附图中用相同的标号来表示相同的部件。

                   实现本发明的最好模式

<网络概述>

参照图1,在本发明的一个实施例中,网络10包括多种设备11,该多种设备11包括经通信链路16相互连接的至少一个客户机设备12和至少一个服务器设备14。通信链路16可包括1394串行总线,提供用于在各种相连的家电设备之间发送和接收数据的物理层(媒体)。1394串行总线支持时间分隔多路传输的音频/视频(A/V)流和标准IP(Internet Protocol,因特网协议)通信(例如,IETF RFC 2734)。在某些实施例中,家庭网络使用IP网络层作为该家庭网络的通信层。然而,其它通信协议可用于为该家庭网络提供通信。例如,本发明可使用由IEC 61883定义的功能控制协议(Function ControlProtocol,FCP)或者任何其它适当的协议来实现。因此,一个网络一般来说可以包括两个或更多个通过物理层相互连接的设备,该物理层按照预定通信协议交换或传送数据。

在网络10中,每个客户机设备12可以与一个或多个服务器设备14进行通信。此外,在网络10中,每个服务器设备14可以与一个或多个其它服务器设备14以及一个或多个客户机设备12进行通信。每个客户机设备12可包括一用户通信接口,该通信接口包括比如用于接收用户输入的鼠标和键盘等的输入设备以及用于提供使用户与联网设备交互的控制用户界面的显示器。用户界面可包括用于向用户提供信息的图形用户界面(GUI)18。每个服务器设备14包括作为网络中用于向用户提供服务的资源的硬件,还可以包括用于控制服务器硬件的服务器或服务控制程序20。

每个服务器设备14除了不能控制用户接口之外能向用户提供服务,并且,每个客户机设备12提供包括用于使用户与网络10交互的控制用户接口的服务。这样,仅有客户机设备12直接与用户交互,而服务器设备14仅与客户机设备12和其它服务器设备14交互。举例来说,服务可包括MPEG资料提供/搜寻和显示服务。

在本发明的一个示例性实施例中,基于浏览器的网络(例如,家庭网络)利用因特网技术来控制和命令包括连接到网络的客户机设备和服务器设备的各设备。每个设备包括比如接口数据(例如,HTML、XML、JAVA、JAVASCRIPT、GIF、JPEG、图形文件、或者任何对所需目的有用的其它格式)等的设备信息,该信息提供用于通过网络命令和控制设备的接口。在某些实施例中,每个设备都包括比如一个或多个超文本标记语言(HTML)页等的设备信息,能够对该设备提供命令和控制。利用浏览器技术,网络采用因特网标准来呈现(render)HTML页,以向用户提供多个用于命令和控制每个设备的图形用户接口(GUI)。在一个例子中,网络被构造成内部网。

在一个实施例中,客户机设备包含向人类操作员提供控制接口服务的设备,包括用于向下通信的图形显示硬件和用于向上(或返回)通信的鼠标或其它点击设备。服务器设备包含提供服务的一模块,所述服务可以是除了由客户机设备提供的控制接口之外的任何服务。这样,服务器/客户机设备关系是一种控制关系,其中服务器设备提供服务,但客户机设备可使用数据比如DTV显示视频数据,但不必处理或改变数据。因此这就与通常遵守的定义是一致的,即,服务器可以是信息源,而客户机(例如,浏览器)可以是信息的用户。

可由服务器设备实现的特定功能的例子包括:返回信息(数据);执行一功能(例如,机械功能)并返回状态;返回数据流和状态;接收数据流和返回状态;或者,保存用于后续动作的状态。服务器设备的例子包括MPEG源、信宿(sink)和显示服务器。尽管典型地服务器设备包括常规内置控制程序,用于实现其本身硬件的控制,但客户机用于与该服务器设备进行接口。然而,这里所使用的服务器设备并不意味着必须使用web服务器和协议堆栈(stack)。

图2示出了按照本发明一个方面的网络100的一个实施例的框图。在网络100上,上面所述的1394串行总线114电连接到多种设备11,包括服务器设备14(例如,DVD 108、DVCR 110)、客户机设备12(例如,DTV 102、103)、网桥(Bridge)116、DVCR 120、PC 105、电缆/modem(调制解调器)接入107和DBS接入109。图3示出了按照本发明可用于在各设备11之间进行通信的分层接口模块的一个例子。在本例中,设备(服务器)150利用一个或多个网络通信协议层152-164与客户机设备166进行通信。在一个例子中,设备150中的应用程序通过网络层160与设备166中的应用程序进行通信。下面的层162和164的细节不能由应用程序了解到,因此使用比如1394或者以太网(Ethernet)都不会对设备150、166中的所述应用程序带来差别。此外,并不是7层模型的所有上层都会在所有时间内使用(例如,在Web模型(TCP/IP模型)中,不使用会话层156和表示层154)。这样,在一种形式中,通过对网络层160采用因特网协议标准,各设备可以相互通信,但不用了解其它通信层(即,应用层152、表示层154、会话层156、传输层158、数据链路层162、和物理层164)的具体细节。因此,通过对网络层160采用因特网协议标准,网络可以在不同设备的通信中使用不同通信层的组合。

单一的物理组件可包括通过如图3所示的经网络层逻辑联网的数个设备,这些设备不必是通过物理网络来联网(例如,这种设备可包括单一房屋内的VCR和电视)。在逻辑设备访问GUI以使用户控制一设备的情况下,该设备和该逻辑设备可包括在同一个物理组件内。在这种实施例中,物理设备从其本身提取一GUI。然而,在其它实施例中,网络将各个物理设备互连,其中,例如,第一设备从第二设备中提取一GUI,以允许用户与该GUI进行交互从而控制第二设备。

在当前优选的实施例中,将1394串行总线用作物理层164,用于在网络100上进行数据通信。由于其增强的带宽能力(例如,增强且有保证的带宽及同步流能力),1394串行总线能够对网络100上的所有数据通信(即,音频/视频流和命令/控制)提供单一媒体。

此外,1394串行总线提供自动配置复位,使得当插入/去除一设备时,所有的1394接口复位,1394总线重新配置并且每个设备都了解每个其它设备(包括新添加的设备或者不包括刚刚去除的设备)的存在。此外,1394接口支持配置信息的数据空间(space),这些信息是可从任何允许其它设备写入/读取信息和进行修改(例如允许网络层协议的操作)的设备寻址的。然而,可以用不同的软件和标准来得到这些结果。因此,网络100并不限于使用1394串行总线,并且,在本发明的替代实施例中,其它总线类型,例如以太网、ATM、无线等,如果它们满足单独网络(例如,家庭网络)的特定吞吐量要求即可被用作物理层。此外,修改的形式,例如无线以太网可包括1394的主要特征。

如图2所示,网络100包括连接到1394串行总线114的数个设备。在本例中,这些设备包括DBSS 104,用于从卫星122接收用于后续显示的发送信号。与DBSS相关联的是网络接口单元(“network interface unit,NIU”),该单元的功能之一是提供在DBSS卫星传输和1394串行总线114之间的接口。

数字视频设备(digital video device,DVD)108也连接到示例性网络100。DVD 108可被用于在电视上显示数字编码的视频内容。连接到示例性网络100的还有数字视频盒式磁带录像机(digital video cassette recorder,DVCR)110,即数字电视102。在本例中,DTV 102通过采用浏览器技术来提供对于网络100的人际接口,以允许用户控制和命令家庭网络100中的各设备。第二DTV103通过采用浏览器技术来提供对于网络100的另一个人际接口,以允许用户控制和命令家庭网络100中的各设备。DTV 102和103可提供对于网络100的人际接口,因为每个DTV都包含用于显示HTML页的一屏幕。然而,其它具有显示能力的设备可被用于提供人际接口。因此,在本发明的某些实施例中,诸如个人计算机105(PC)等的设备被用于提供对于各个家庭网络的人际接口,因为PC 105通常被体现为一个屏幕显示单元。

1394串行总线114被描述为采用HTTP/IP接口协议,并且最好是HTTP/TCP/IP协议,其中IP提供分组格式(单向只写模型),TCP提供IP的无错版本(例如,保证分组到达并且以正确的顺序到达),并且,HTTP提供双向连接(分组到服务器将期待一响应,是‘读取’模型)。某些设备可要求其它协议接口类型(例如,UPD/IP、FTP/IP、TELNET/IP、SNMP/IP、DNS/IP、SMTP/IP)。在本发明的某些实施例中,代理服务器(proxy)116可被用于对两个网络提供接口,其中这两个网络在它们各自的媒体上采用不同的接口协议,这些网络在被相连时包括网络100。代理服务器116(例如,Web代理服务器)可包括家庭自动类型协议,比如用于X10的HTML/HTTP/TCP/IP代理服务器、Lonworks、CEBus(取决于它们各自的物理技术)、或者1394上的非IP协议(例如,AVC/FCP/1394)。

在某些实施例中,两个网络媒体是属于同一类型。例如,如图2所描述的,采用HTTP/IP接口协议的1394串行总线114是由代理服务器116连接到家庭自动中枢(neutral)118(例如,X10)的。通过将代理服务器116用作用于VCR-命令/AVC/FCP/1394的HTML/HTTP/TCP/IP/1394代理服务器,以提供HTML/HTTP/TCP/IP和X10协议之间的接口,网络100上的DVCR 120也是可访问的。在某些其它实施例中,网络可包括不同类型的两种网络媒体,例如,1394串行总线和以太网。因此,在本发明的某些实施例中,代理服务器用于提供对两个不同媒体类型的接口,以形成单一网络。后面将描述的找寻处理可被用于找寻通电并连接到网络100的各设备。此外,可使用同样的1394总线,而不需要网桥盒。

如图2所描述的,设备11包括DTV 102、DTV 103、PC 105、DVCR 110、DVD 108、DSS-NIU 104和DVCR 120,它们表示当前连接到包含1394网络的网络100的各设备。客户机-服务器关系存在于所连接的设备中,其中DTV102、DTV 103和PC 105通常用作客户机,而设备DVCR 110、DVD 108、DSS-NIU 104和DVCR 120用作服务器。

典型的1394网络包含互连的设备,比如为设施的集合,包括提供一个或多个被控服务的服务器设备(例如,用作MPEG视频记录和重播服务器的DVCR 100),以及提供用于控制服务器设备的用户界面(UI)服务的客户机设备(例如,DTV 102)。某些设施(例如,DTV 103)可具有受控制的双重服务(例如,MPEG解码和显示能力),以及UI控制器能力。按照本发明的一个方面,在网络100中,包括基于万维网(World Wide Web)标准(Web模型)中所使用的技术的协议、文件描述、图像压缩和脚本语言标准的各种方法和系统用于实现1394 WEB(万维网)用户到设备控制模型。万维网模型是一种客户机/服务器模型。受控的服务器设备(服务)包括Web服务器,而控制器客户机设备(即,能够显示UI的设备)包括Web客户机,该Web客户机包括下面将进一步描述的GUI表示引擎,比如Web浏览器(例如,ExplorerTM、NetscapeTM等)。

<用户设备控制>

图4示出了按照本发明在网络100中的比如DVCR 110等的服务器设备,DVCR 110用于向比如DTV 102等的客户机设备重播MPEG视频,其中,DTV 102可显示用户界面。DVCR 110包括Web服务器硬件和软件,而DTV 102包括Web浏览器软件。用户可利用DTV 102来请求使该DTV 102基于DVCR 110中所包含的信息202或者基于DTV 102中所包含的信息204显示用户界面。例如,用户可利用DTV 102中的浏览器200来显示包含在DVCR 110中的HTML控制页GUI 202或者包含在DTV 102中的HTML控制页GUI 204。每个页202、204包括HTML形式的图形用户界面描述信息,其中浏览器200读取该信息来生成图形用户界面。每个页202、204分别表示应用程序206、212的控制接口。每个页202、204可包括分级页,用来表示相应的应用程序控制接口。

每个GUI 202和/或204包括有效控制图标和/或按钮,用于让用户选择和控制当前连接到网络100的控制设备。例如,如果用户选择通过浏览器200显示在DTV 102上的DVCR 110的GUI 202中的“播放(PLAY)”按钮,则一超链接消息返回到DVCR 110 Web服务器并指向DVCR 110中的应用软件206(例如,MPEG记录/重播服务应用软件),用于操作DVCR硬件208。在一个例子中,DVCR 110中的MPEG视频流源208将一MPEG视频流发送到DTV 102中的MPEG视频解码和显示系统210,用于在DTV 102中的应用控制软件212的控制下进行显示。DVCR 110中的应用软件206还将信息发送回DTV 102中的应用软件212,例如包括当操作成功时的确认消息,或者将改变的或者不同的控制GUI 202发送回对用户指示状态的DTV 102。还可以在应用软件206和212之间进行进一步的通信,例如用于建立用于视频流服务的1394同步视频流连接。

图4B示出在网络100中,一服务器设备与能够显示用户接口的一客户机设备进行通信的另一例体系结构图。在网络100中,比如DVCR 110等的服务器设备对比如DTV 102等的客户机设备重播MPEG视频,其中DTV 102可显示一用户接口。

<通信协议>

在本发明的一个实施例中,在网络100中各设备之间的通信协议是基于超文本传送协议(HTTP 1.1)、用于分布协作式超媒体信息系统的应用层协议。HTTP是通用的、无国界的、面向对象的协议,可被用于完成许多任务。HTTP的一个特征是数据表示的键入和协商(typing and negotiation),允许各设备被与要通过各设备所连接的网络100传送的数据无关地建立。

<GUI描述语言>

用于定义各种GUI 202、204的描述文件语言例如可以是HTML,版本4.0,万维网的出版语言。HTML支持文本、多媒体和超链接特征的脚本语言和样式表。HTML 4.0是符合国际标准ISO 8879—标准概括的标记语言的SGML应用程序。

<图像压缩格式>

为显示图像,在1394 WEB网络100中采用由HTML规范规定的三种静止图像图形压缩格式,以用于ICON、LOGO(标识语)和其它图形。这些静止图像图形压缩格式为:图形相互交换格式(Graphics Interchange Format,GIF89s)、逐行扫描联合图片专家组(Joint Photographic Experts Group,JPEG)和可移植网络图形(Portable Network Graphics,PNG)。表1示出在三种静止图像图形压缩格式之间能力的差异。

                     <表1:静态图像压缩格式>

PNG  逐行扫描JPEG  GIF89a  颜色深度48位    24位  8位  支持的颜色    1.67千万  256  支持的格式光栅、矢量    光栅  光栅  压缩制式LZ77衍生物(derivative)    JPEG  LZW透明度灰度及RGB的每像素、用于索引的每种颜色、256级  单一颜色2级(二进制)  逐行扫描显示    是  是  可升级性    否  否  动画    否  是  无损压缩100%  真彩色48位  灰度16位  有索引色彩  伽马(γ)校正(光强)  色度校正两者都有  可检索元数据  可展开性是,程序块编码

<脚本语言>

此外,Web脚本语言即ECMA-Script-262用于提供视觉上增强GUI Web页202以作为基于Web的客户机-服务器体系结构的一部分的手段。脚本语言是用于操纵各设备的设施/服务并使这些设施/服务客户化和自动化的编程语言。用户接口200提供基本用户接口功能,并且脚本语言用于将功能体表述为程序控制。现有系统提供用于完成脚本语言的能力的对象和设施的主机环境。Web浏览器200提供用于客户机侧计算的ECMA-脚本主机环境,例如包括表示视窗(windows)、菜单、弹出(pop-ups)、对话框(dialog boxes)、文本区(text areas)、定锚(anchors)、方框(frames)、历史记录(history)、小甜饼(cookies)和输入/输出的对象。

Web浏览器200提供用于EXMA-脚本-262的主机环境,该主机环境支持附加用于各事件的脚本代码,这些事件比如为改变聚焦、页和图像装入、卸载、出错和异常中止、选择、形成建议、以及鼠标动作。脚本代码包括在HTML页202和204中,而显示的页为浏览器200,包括用户接口部件的组合以及固定和计算的文本和图像。脚本代码对用户交互进行响应,不需要主程序。

<客户机设备规范>

在一个实施例中,用于1394WEB客户机浏览器200的规范包括HTTP 1.1规范,其中,该HTTP 1.1规范中涉及到连接持久性的‘8.1.2.1协商(Negotiation)’章节被作了修改,使得比如DTV 102等的HTTP 1.1客户机设备期待经1394到比如DVCR 110的服务器设备的连接保持为断开,因为1394WEB用户控制的持久连接允许来自服务器设备(DVCR 110)的全状态报告,同时GUI 202和/或204保持在客户机设备(DTV 102)的浏览器200中的可视性。HTTP连接保持为断开(HTTP规范RFC 2068),其中支持持久连接的客户机可以“管线输送(pipeline)”其请求(即,在不等待每个响应的情况下发送多个请求)。服务器必须以与接收到各请求的顺序相同的顺序发送对于那些请求的响应。这就允许Web浏览器200向DVCR 110管线输送请求,然后,DVCR 110可利用比如状态响应来满足这些请求,这些响应比如为当前播放、当前记录、倒带、结束、带子损坏,等。其它例子的实现形式例如包括:来自DVCR 110的控制页可以含有一请求,用于请求循环(loop)GUI描述文件202的DVCR 100请求。

GUI表示引擎200用在比如DTV 102等的客户机设备中,用于解译写入HTML 4.0文件描述语言及相关规范(下面将描述)中的GUI描述文件202、204,并用于创建用于向用户显示的图形。GUI表示引擎200例如包括下列属性:(1)视窗(GUI)最小缺省尺寸,例如为H0×640像素(480×640,其中480为垂直像素,640为水平像素)。该缺省尺寸用于确保GUI 202、204中想要的外观,该外观传送到浏览器200中的用户。所传送的GUI 202、204显示在480×640像素的视窗中,或者以相同的屏幕宽高比放大为更大,除非用户另有指定;(2)静止图像压缩格式:例如为GIF89a、JPEG和PNG;(3)样式表格式和字体:例如CSS1和CSS2;(4)比如下面所述的固定字体(build-in fonts)这样的字体对客户机设备来说是需要的,它使得简单的服务器设施不必支持这些字体。每一个普通拉丁族字体中的最小的一种字体可以被选择:例如,从‘serif’族中选择Times New Roman(新罗马字体);从‘sans-serif’族中选择Helvetica;从‘cursive’族中选择Zapf-Chancery;从‘fantasy’族中选择Western;以及从‘monospace’族中选择Courier。其它的字体也可以被采用;以及(5)脚本语言,例如,ECMA-262。GUI表示引擎200的例子包括ExplorerTM和NetscapeTM等按需要配置/客户化的Web浏览器。

<服务器设备规范>

一个或多个服务器设备(例如,1394WEB网络控制的设施的Web服务器,比如为DVCR 110)包括下面六种列举的部件:

(1)HTTP 1.1 web服务器协议,具有HTTP 1.1规范中涉及被修改的连接的‘8.1.2.1协商’章节,修改后的连接使得HTTP 1.1服务器设备(例如,DVCR 110)假定HTTP 1.1客户机设备(例如,DTV 102)想要保持与该服务器设备的持久连接。1394WEB网络100中的持久连接允许例如从服务器设备DVCR 110到客户机设备DTV 102的全状态报告,同时,DVCR 110的GUI 202保持在DTV 102的浏览器200中的可视性。此外,可采用利用HTTP条件性GET来获得服务器设备的最新状态的方法。无论何时用户返回到家庭网络目录或者使其被刷新,浏览器200都要重新显示本页的全部。这点是必需的,因为如果已经将一设备添加到网络100中或者从网络100中除去一设备,那么家庭网络目录下的HTML必须被重新生成。可以将设备图标更新,以反映它们的设备工作状态的变化。因此,由EIA-775.1设备所实现的浏览器采用HTTP“conditional get(条件性获得)”请求来确定是否应当从服务器中检索web页或者图形的新复制件。

(2)例如以HTML 4.0写成的设备主页GUI描述文件202、204,包括例如icon.htm、name.htm、logo.htm、index.htm、gif文件等的文件。文件index.htm被包括在设备icon.htm和name.htm HTML文件中的HTML链路参照,其中index.htm可被选择性地命名为比如AINDEX.HTML@或者AINDEX.HTM@。命名为INDEX.HTM的文件不要求是标准化名称,因为ICON.HTM和NAME.HTM是利用对‘INDEX.HTM’的超链接来形成的,因此其名称是随机的。ICON.HTM和LOGO.HTM参照同一设备中的实际图形文件,例如LOGO.GIF和ICON.GIF。描述文件202、204可由网络100中的设备(例如,HTTP设备)访问。为保证想要的外观,控制GUI设计可以是缺省的GUI尺寸,例如480×640像素。例如,传送的GUI 202可以显示在浏览器200的480×640像素的视窗中,或者以相同的宽高比被放大得更大,除非用户另有指定。

(3)提供了至少两个设备ICON(图标)文件,用来表示浏览器200中顶层网页220(图5-6)中的设备,并用来说明关于连接到网络的各设备的信息。ICON可包含一图形文件类型(例如,GIF、JPG或PNG)并被命名为ICON.HTM。在一个例子中,ICON.HTM(DVCR)参考HTML页202中的INDEX.HTM文件,而ICON.HTM(DTV)参考HTML页204中的INDEX.HTM文件。用于设备的控制页(例如,INDEX.HTM)的顶层链路可以是ICON.HTM。浏览器200中有网络100中的多个设备的图标和链路,浏览器200将这些图标和链路放置在顶层HN目录页220中,用于让用户进行服务找寻。然后,用户点击显示在页220中的ICON,并取出设备页(例如,页202中的INDEX.HTM)。缺省显示的HN目录是顶层找寻页。

可使用许多附加和不同的图形图标,例如,用来表示可替代图形图标的设备状态、用户配置偏好或者制造商格式。在下面进一步描述的显像处理中,从各设备连接到网络100的多个ICON集合在一起并显示在顶层网络设备页220中,以便由用户选择。设备ICON规范的一个例子包含:可由HTTP服务器访问的文件名ICON.HTM(文件名存在于目录中、文件间隔(file space)处,可由Web服务器访问,以使它们可被检索并通过网络传送到浏览器);图形文件类型,比如GIF、JPG或者PNG;以及最大尺寸为70(V)×130(H)像素的图标图形。

(4)提供了至少两个设备LOGO(标识语)文件,用来表示顶层网络设备页中的设备。LOGO可包含一图形文件类型(例如,GIF、JPG或PNG)并被命名为LOGO.HTM。在一个例子中,LOGO.HTM(DVCR)参考HTML页202中的INDEX.HTM,而LOGO.HTM(DTV)参考HTML页204中的INDEX.HTM。在一种形式中,用于设备的控制页(例如,INDEX.HTM)的顶层链路可以是LOG0.HTM。所有的设备标识语可以放在顶层HN目录页220中,用于让用户进行服务找寻。然后,用户点击显示在页220中的LOGO,并取出设备页(例如,页202)。可以用许多用于制造商服务的附加和不同的图形来替代标识语图形格式。按照找寻处理,从各设备连接到网络100的多个LOGO集合在一起并显示在顶层网络设备页220中,以便由用户选择。设备LOGO规范的一个例子包含:可由HTTP服务器访问的文件名LOGO.HTM;图形文件类型,比如GIF、JPG或者PNG;以及最大尺寸为大约70(V)×130(H)像素的标识语图形。

(5)提供了至少一个设备NAME(名称),用来表示顶层网络设备页中的设备。NAME可包含HTML文件NAME.HTM中的TEXT(文本)。该文本可参考控制页(例如,页202)。这是找寻页中到设备的控制接口的顶层链路。这种文本可以提供区别相同设备的方式,由此,例如,两个相同的DTV可通过增加NAME文本‘卧室电视’和‘客厅电视’来区别。这种文本可包括少许文字,用来清楚地表示设备类型,例如,DVCR或者DTV。按照找寻处理,从各设备连接到网络100的多个NAME与相应ICON/LOGO一起被访问,并显示在顶层网络设备页220中的ICON/LOGO下。NAME规范的一个例子包含:可由HTTP服务器访问的文件名NAME.HTM;未指定文本,例如,字体大小为10的两行文本可以显示在相应的ICON/LOGO下。因此,例如,用于NAME.HTM文本的空间大小可以是垂直20乘以水平130,以便能匹配ICON/LOGO(70垂直×130水平)。就象如图5-6的例子所示的,顶层UI 220的格式可包含一矩阵图标,用来表示联网设备对用户的各功能。表示设备的名称(来自name.htm)放置在同一设备的图标(来自icon.htm)下。标识语(来自logo.htm)例如可以放置在任何空闲的图标位置。由于顶层描述文件250(下面将结合图9A-C进一步描述)是由有UI功能的设备独立生成的,不必预先安排确切的设计。图标、标识语和名称的最大尺寸可被预先安排,以便于GUI矩阵的设计。

(6)可提供以HTML 4.0写成的设备信息汇总主页描述文件,例如被命名为“info.html”或“info.htm”,并且可以在找寻处理中由HTTP服务器访问。可通过控制页(例如控制页202和204)将一链路提供给INFO.HTM信息。设备信息汇总主页向用户提供设备汇总而不是详细的控制接口,就象设备主页中所示出的。表2示出所包括的设备属性文本以及可包括的其它内容。该表可被扩充,以包括其它属性。

                 <表2-设备信息汇总>

    名称    值    设备名称设备名称(用户可配置)    设备位置家中的设备位置(用户可配置)    设备图标当前设备ICON名称    设备类型设备类型或者类别(VCR、DSS、TV等)    设备模型设备模型    制造商名称设备制造商名称    制造商标识语制造商标识语图像名称    制造商URL设备制造商的URL    流源名称缺省服务:用于本设备目标服务的缺省源设备名称    流目标名称缺省服务:用于本设备源服务的缺省目标设备名称    流源属性服务设备的类型可以是交付(属性和能力)    流目标属性服务设备的类型可以是接收(属性和能力)

表2包括比如制造商名称、制造商标识语图像名称等的设备汇总信息,并且还包括制造商URL,该制造商URL用来在出现到制造商Web站点的有效因特网连接时提供帮助。表2还可包括用户可配置的设备名称和家中的设备位置。表示设备的不同状态的设备图标可以有几种变化形式。设备图标属性字段包括当前图标名称。因此,设备汇总信息页可通过显示表示当前状态的图标而对用户提供即时的设备状态信息。

每个设备可包括一个或多个服务,例如,视频流源或者视频流目标。每个源性能具有完整的缺省目标性能,而每个目标性能具有完整的缺省源性能。当DVCR被控制为源时,这种流缺省名称项目例如可用于自动默认最近的DTV为目标,以免除每次对DTV的选择。提供了流缺省名称对1394地址的背景交叉参考。视频流服务是由1394接口本身提供的(而不是由Web模型提供的)。因此存在着缺省源或信宿到1394地址的链接机制。用户可访问一设备并选择默认的名称,然后,该名称存储在设备上。设备的软件代理程序必须找出1394地址及用于1394s/w的参数,以便在需要时启动缺省流。

采用源和目标服务属性,可实现新的一个服务器/多个服务器,同时保持与现有主机或设备(节点)的兼容性及各种服务。例如,如果提供新服务的新服务器设备研制成功并与现有服务器设备兼容,则新的和现有的服务器都可被添加到新节点的属性列表,同时保持与网络100中使用现有服务器的现有节点的兼容性。用户可选择购买一兼容设备。这就能给用户提供“ABOUT(大概)”信息,以便例如在购买新设备之前,在需要兼容性的情况下,检验现有设备的性能。

<网络操作>

用于每一个支持1394WEB标准的设备(例如,能够显示用户接口的设备)的找寻处理从连接到网络100的各设备搜集设备信息,以生成用于家庭网络的顶层用户控制页描述文件,其中每个设备是由上面详述的图形图标参考文件和原文本(textual)名称参考文件来表示的。顶层描述文件可包括用于比如浏览器200等的表示引擎的缺省页,其中浏览器200在其呈现显示在该浏览器200中的网络顶层图形用户接口220(GUI)时,从各设备中搜集图形图像和名称,就象图5-6的例子所示的。动态创建的顶层HN目录页220作为浏览器的缺省页(当启动浏览器时显示的第一页)。

参照图4B,举例来说,操作步骤包括:(1)启动设备102中的浏览器200,(2)浏览器200从页204中提取并呈现HN目录HTM(顶层UI),(3)浏览器200从页202、204中提取HTM文件icon.htm和names.htm,并将其呈现在顶层UI中,(4)浏览器200从页202、204中提取任何图形文件(例如,GIF),并将其呈现在顶层UI中,(5)然后,浏览器200能够呈现全部HN目录(HN directory)页220(页220是由对‘INDEX.HTM’文件的超链接制作的,用于连接到网络100的不同设备),以及(6)当用户例如点击GUI 220中的DVCR图标以控制DVCR 110时,到DVCR 110的‘INDEX.HTM’的顶层页220中的相应超链接被用来从DVCR 110的页202中检索‘INDEX.HTM’(DVCR的顶控制页),并将该DVCR控制页呈现给用户(例如,如果所点击的方框(例如icon.htm方框)不够大,则图形以全方框尺寸呈现在浏览器的另一个复制件中)。然后,用户可利用由DVCR设备110的‘INDEX.HTM’所提供的控制接口来命令和控制DVCR 110,该控制接口是由DTV 102中的浏览器200呈现的。

名称‘INDEX.HTM’是任意的,因为ICON.HTM和NAME.HTM是用到‘INDEX.HTM’的超链接制作的。然而,ICON.HTM和LOGO.HTM参考相同设备中的实际图形文件(例如,LOGO.GIF和ICON.GIF)。在一个实施例中,如果用于一设备的标识语是可选择的,则LOGO.HTM也是可选择的。HN目录(HN Directory)HTML文件可具有标准名称,以使其可从另一个设备被访问到。

图5-6示出主机设备,比如客户机设备(例如,DTV 102、HDTV 1)或者生成和呈现顶层GUI页220的服务器设备(例如,DVCR 110),主机设备可拥有优先权并将更大尺寸的图标使用于主设备的图标、名称、标识语等。在一种形式中,仅在GUI 220中显示具有服务器(提供服务)的设备(“客户机设备”包含具有客户机能力的设备,其中,如果其仅仅是客户机,则不显示在顶层GUI中,因为没有服务要提供)。找寻处理从1394地址空间数据存储器件(配置ROM结构)中读取信息,就象在ISO/IEC 13213的条款8中定义的那样。尽管称为‘ROM’,但它处于假定地址空间为可写的情况,以便允许用户配置和修改用户相关的存储值。配置ROM的内容和找寻处理在下文中作了进一步描述。

用于利用因特网、Web和1394技术进行的对消费设备的家庭或局域网络控制的设备命名、寻址和找寻处理可以与一般因特网空间中的要求和实践不同。因此,按照本发明的用于消费设备的家庭或局域网络控制的一个方面,可采用特定处理,包括设备找寻、寻址和命名要求。例如,家庭网络必须是在不需要有外部通信和服务、不需要网络管理员的情况下完成全部功能,并且配置必须全部为自动化。用户控制可以在许多情况下完全不需要键盘进行。此外,IEEE 1394协议用于提供高级接口,包括可提供简单、有效和优越的找寻和配置功能的特点。

<1394家庭网络>

图7示出按照本发明另一个实施例构成的网络300的方框图。为便于理解,本文中尽可能采用相同的标号来表示所有附图中公用的相同部件。如图7所描述的,上面描述的1394串行总线114电连接到上面参照图2所描述的网络100上的多种设备,包括服务器设备14(例如,DVD 108、DVCR 110)和客户机设备12(例如,DTV 102),其中各设备采用如上面图3中所举例的分层接口模型进行通信。

网络300并不限于采用1394串行总线,并且,在本发明的可替代实施例中,其它类型的总线,比如以太网、ATM无线等,在它们满足单独网络(例如,家庭网络)的特定吞吐量要求时可用作物理层。如图7所描述的,网络300包括连接到1394串行总线114的数个设备。在本例中,这些设备包括DBSS104,用于从卫星122接收用于后续显示的传输信号。与DBSS相关联的是网络接口单元(“NIU”),其功能之一是提供在DBSS卫星传输和1394串行总线114之间的接口。数字视频设备(DVD)108也连接到示例性网络300。DVD108可被用于例如在数字电视上显示源数字编码的视频内容。连接到示例性网络300的还有数字视频盒式磁带录像机(DVCR)110、数字电视(DTV)102。在本例中,DTV 102通过采用浏览器技术来提供对于网络300的人际接口,以允许用户控制和命令家庭网络300中的各设备。第二DTV 103通过采用浏览器技术来提供对于网络300的另一个人际接口,以允许用户控制和命令家庭网络300中的各设备。DTV 102和103可提供对于网络300的人际接口,因为每个DTV都包含用于显示HTML页的一屏幕。然而,其它具有显示能力的设备可被用于提供人际接口。因此,在本发明的某些实施例中,诸如个人计算机105(PC)等的设备被用于提供对于各个家庭网络的人际接口,因为PC 105通常被体现为一个屏幕显示单元。

1394串行总线114被描述为采用HTTP/IP接口协议,并且最好是HTTP/TCP/IP协议,其中IP提供分组格式(单向只写模型),TCP提供IP的无错版本(例如,保证分组到达并且以正确的顺序到达),并且,HTTP提供双向连接(分组到服务器将期待一响应,是‘读取’模型)。某些设备可要求其它协议接口类型(例如,TCP/IP、UPD/IP、FTP/IP、TELNET/IP、SNMP/IP、DNS/IP、SMTP/IP)。在本发明的某些实施例中,代理服务器116可被用于对两个网络提供接口,其中这两个网络在它们各自的媒体上采用不同的接口协议,这些网络在被相连时包括网络300。

例如,如图7所描述的,采用HTTP/IP接口协议的1394串行总线114是由代理服务器116连接到家庭自动网络118(例如,X10)的。通过将代理服务器116用作用于VCR-命令/AVC/FCP/1394的HTML/HTTP/TCP/IP/1394代理服务器,以提供HTML/HTTP/TCP/IP和X10协议之间的接口,网络300上的DVCR 120也是可访问的。

在本实施例中,网络300可以通过总线121连接到与1394串行总线不同类型的外部网络119(例如,以太网)。代理服务器117用于提供对两个不同媒体类型的接口。为在外部网络119的地址方案和网络300的地址方案之间进行通信,网桥117包括网络地址解译(Network Address Translation,NAT)界限。这项技术可被用于公司LAN,并且是针对复杂问题的‘分而克服(divideand conquer)’方法,满足各种网络的不同IP地址要求,并防止‘用尽IPV4’地址。外部网络例如可包括经以太网连接到电话(例如,ADSL)的有线电视网络115,用于提供到因特网和WWW的宽带连接。以太网119对外部网络提供网桥功能。网桥117或者以太网119可提供NAT地址转换功能。如果以太网是提供本地专用(仅对家庭)寻址(例如,就象由IETF标准RFC 1918定义的),则NAT功能在以太网119内完成。现有的电缆调制解调器(modem)是用环球地址以及因特网环球地址建立的,用于以太网上的PC(在此情况下NAT处于网桥117中)。

<IP名称/地址配置>

下面描述上面提到的设备命名、寻址和找寻处理。对于设备命名,点击Web操作(例如,使用GUI/Web)不要求命名服务(DNS、域名服务)。Web GUI提供一抽象层(abstraction layer),并且,地址被隐藏为通过用户‘点击’以激活GUI区(例如,按钮)来调用的超文本链接。局域网300中各设备的任何变化都会引起顶层找寻GUI页200(图5-6)的重建,这是由表示当时网络300中各设备状态的浏览器200(图4A-B)通过将缺省项呈现给用户立即使用来执行的。

对于设备对设备的控制,将一种不同的查找服务使用于多个名称(例如,服务查找和应用程序查找)。这样,DNS可以不提供用于设备对设备控制的必要特征。然而,正常情况下,一设备(例如,1394连接的PC)可以访问DNS服务。DNS不要求在家中找寻或操作各设备/各服务,但对于例如从PC进行的外部访问来讲,要求DNS(名称到地址)查找服务。当将一名称例如“www.yahoo.com”键入浏览器时,则会发生对Yahoo计算机的IP地址即216.32.74.52的查找,因为因特网(甚至家庭因特网)是利用地址来操作的。

对于包括用于生成HN顶层目录GUI描述文件的代理程序并包括对于特定公司web服务器的访问例如homewide.com(IP地址)的775WEB UI设备来讲,也可以有DNS地址知识。DNS服务器计算机IP地址可以是制造商控制下的任何IP地址。有效的做法是将DNS地址内置到设备中(或者可以被更新,其条件是代理程序(agent)为可更新的并且在其后被更新)。

对于设备寻址来讲,在本发明的一个实施例中,利用来自大的地址空间的固定IP地址可以提供最简单且最可靠的网络配置,并且,1394接口中容易访问的ROM数据空间允许使用其中的固定IP地址。在本发明的另一个实施例中,可使用非固定的IP(动态)地址,其中,采用一抽象页(例如,名称或查找机制)来保留预组织的通信。

对于IP地址配置,可使用下列的协议:(1)带有动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)服务器和DHCP客户机的DHCP,(2)采取自动配置的DHCP客户机(DHCP服务器不出现),以及(3)最好是在下面进一步描述的FWHCP(Fire-Wire Host Configuration Protocol,法尔-瓦尔主机配置协议)服务器代理程序以及FWHCP客户机。第(2)项中所述的自动配置被推荐为IETF草案“draft-ietf-dhc-ipv4-autoconfig-04.txt”。

DHCP要求BOOTP/UDP协议的支持,并且复制在1394规范中所做的一切,并提供比如租用时间(1ease time)和动态寻址等特征。典型的DHCP要求由管理员来管理,并且必须被配置成适配于大批制作的消费电子(consumerelectronics,CE)设施的网络要求,其中,例如,必须考虑带有内置的DHCP服务器的多个相同的CE设施。

1394技术提供‘插入(Plug-in)’或‘加电(Power-up)’复位功能,并且之后跟随‘自身份(Self-ID)’序列,非常适合于网络配置。此外,1394规范提供内置‘ROM’地址空间,非常适合于存储并访问配置数据(例如,IP地址)。因此,在本发明的一个优选实施例中,采用IP地址配置代理程序(FWHCP)和找寻页,用于使用户控制各1394设备。FWHCP提供用于1394WEB和1394设备的IP地址配置。FWHCP的目的和结果类似于DHCP(即,识别和分配本地IP地址的服务器),但在操作中,FWHCP采用1394地址空间中的数据和1394命令。FWHCP提供1394WEB设备在1394网络上的IP地址配置,避免与相邻连接的非1394的网络上的设备发生冲突。各设备是利用在10.x.x.x范围内的内置IP地址制作的。在发生不希望的冲突事件时,FWHCP设置新的IP地址并将其保存在设备中。

DHCP/自动配置可被用于非1394的网络上的设备。DHCP协议提供给客户机“请求的IP地址”。最好,所请求的IP地址空间是从24位RFC 1918范围的上面部分(从10.128.1.1到10.254.254.254)选择的。通过对1394 IP地址选择所允许专用地址范围的一部分以及对另一些配置方法(例如,DHCP和DHCP/自动配置)选择另一部分,则会对不同种类的网络生成兼容和不兼容地址并允许FWHCP和DHCP共存。

尽管对1394和相邻网络选择非重叠IP地址是人们所希望的,但不同种类的网络即使它们真的重叠也会利用FWHCP来成功配置。此外,DHCP客户机在使用所分配的IP地址之前,利用测试ARP消息来对该地址进行检验。这样,不同的地址配置方法可以成功地共存。

<网络方案(Scenarios)和地址管理>

参照图8,将描述按照本发明的用于在IP地址配置的1394网络(例如,网络300)和非1394网络(例如,以太网119)之间进行通信的处理过程的例子。在此情况下,1394网络300采用FWHCP配置,而非1394网络119采用DHCP配置或其它方法。一般来说,1394设备(比如图7中的DTV和DVCR)不支持DHCP。1394 DEVICE-3用于1394网络到非1394网络通信,包括1394 ROM空间中的IP地址并且为1394设备提供对FWHCP的支持。DEVICE-3还包括用于支持非1394网络上的配置机构的装置,并且保持1394 ROM空间中的扩充数据叶(leaf),用于非1394网络上的设备的IP地址。因此,1394网络300上的配置处理(例如,用于顶层UI描述文件生成的FWHCP)可包括通过从扩充数据叶选择IP地址来使用非1394网络上的IP地址。非1394网络配置操作时还用来为1394扩充数据叶提供IP地址。

按照找寻处理(代理程序),1394规范‘插入’复位和自身份可被用来进行配置,并且可被用于IP地址配置。优选的是,将固定IP寻址方式用于家庭网络,然而,也可以使用动态IP寻址方式。在1394WEB控制中不需要DNS,因为顶层GUI描述文件是利用超链接来创建的,这种超链接使用IP地址而不是名称。优选的是,利用1394 ROM数据和1394命令,将1394网络的IP配置代理程序(FWHCP)用于IP配置,然而,也可以采用DHCP。FWHCP使用RFC 1918 10.LH.X.X地址的下半部分,而其它家庭网络(非1394)使用上半部分10.UH.X.X。优选的是,FWHCP服务器代理程序内置于任何设备中,该设备可以是客户机(控制发起者)。在有数个客户机设备连接到1394网络的情况下,仅仅是具有最高环球唯一身份(Global Unique Identification,GUID)的客户机设备才进行操作。GUID包含内置到接口的一号码。如果在1394WEB网络上有多个可用的FWHCP代理程序,则由初始自选处理来确定一个即将运行的代理程序并且让所有其它代理程序保持静态。最高的GUID将运行。在其它形式中,最高位反相的GUID可被使用。

接口到非1394网络的设备支持该非1394网络上的IP地址的ROM扩充叶。这就允许将非1394网络上的IP地址包括在1394顶层GUI中(例如,图4A-B中,GUI 202、204)。1394 ROM空间的控制数据位用于控制三个配置代理程序的操作:(1)1394自身份(Self_ID)计数,(2)IP配置FWHCP,和(3)下面将进一步描述的UI描述文件生成。

起初,1394自身份计数找寻存在的设备。在总线复位(由功率上升/下降(power up/down)或者设备连接/拆卸引起)之后,设备中的1394软件观测自动配置处理(1394自身份循环),以便对设备号码计数。这是用于任何1394设备的1394软件的正常处理部分。然后,IP配置FWHCP(一个自选的FWHCP)探测找到的设备并检验它们内置的IP地址。找到的双重(冲突)IP地址被停用,并将新地址分配给该设备。然后,UI描述文件生成代理程序(UI或其它设备),读取所有的1394WEB设备IP地址,并在每个设备的顶层图标页以HTML生成顶层设备找寻图形用户接口文件,所述每个设备的顶层图标页会在之后由Web浏览器呈现,以使用户找寻各设备进行控制。

按照本发明,1394网络400中的每个设备可生成其自己的顶层网络UI描述文件250(图9C)。UI描述文件250由客户机设备中的比如浏览器200等的表示引擎使用,以生成和显示比如图5-6中的页220的顶层找寻页。在1394自身份代理程序已列举了连接到1394网络300的所有设备之后,由所有UI设备(以及所希望的非UI设备)单独生成顶层UI描述文件250。设备(例如DTV)可选择更明显(例如,更大)的图标来表示该设备,并以不同外观来制作整个GUI 220。这种技术对所有设备的操作提供实质上比中央生成的GUI更为可靠的操作,因为每个设备可生成其自己的UI描述文件250并基于此显示一GUI(例如,顶层页220),不需要依赖于另一设备。在每个UI描述文件250中,当前连接到网络300的各设备的设备图标和标识语图像文件由图标和标识语HTML‘页’以及包容在HTML页中的名称文本来参考(ICON.′Graphic(图形)′参考的ICON.HTM是在页202和204中,它们也包括用于设备的控制页;图5的下面也示出了顶层目录页中的ICON.HTM、LOGO.HTM和NAME.HTM)。HTML方框用于按需要在每个网络设备中创建用于各网络设备的顶层目录UI描述文件250。

因此,有益的是,提供抽象的有用层,以允许用户修改文件名称和类型,例如,网络设备中的标识符图形,不需要改变在每个设备中生成的顶层描述文件250。名称文本也置于HTML描述文件202、204(NAME.HTM是在页202、204中)中,允许用户在一设备例如DTV上配置名称文本,以便例如通过其中的一个设备GUI页220改变DTV-BED2。因此,当浏览器在复位之后被启动时显示页220。用户查看并点击DVCR ICON图形,由此提取(利用‘播放’按钮等)DVCR顶层控制GUI 202。用户点击其中的一个按钮,例如“配置设备名称”,这是另一个具有大量供选择的不同名称的GUI(是用于DVCR的分层控制页的GUI)。用户从例如“主卧室DVCR”所提供的名称列表中点击一个名称。设备上的软件改变文件名称,以使命名为NAME.HTM的文件包含文本“主卧室DVCR”(原先包含在DVCR中的缺省NAME.HTM文件被改变成另外的名称)。

在具有太多或者超尺寸的文本或者超尺寸的标识语的‘坏市民(badcitizen)’设备的情况下,GUI 220的外观更为稳定。在此情况下,用方框隔离该问题,并防止坏项负面影响整个顶层GUI 220的外观。

<设备找寻体系结构>

参照图9A-C、10、11,这些图举例示出了各种功能块、到数据和控制位的连接关系、以及用于上述找寻处理的系统体系结构400的一个实施例的流程图。系统400包括5个主要部件:(1)1394非易失性存储器空间(IEEE 1212RROM)402,用于配置数据和控制数据位存储;(2)1394设备找寻代理程序(1394DDA)404;(3)IP地址配置代理程序(FWHCP)406;(4)UI描述文件生成代理程序408;和(5)GUI生成和运行时间环境410(例如,图2中的Web浏览器200)。此外,图10示出了在系统400中用于DDA和FWHCP代理程序的流程图的例子,系统400与图9A-C所示的功能块结合操作。并且,图10示出了系统400中用于UIDGA代理程序的流程图的例子,系统400与图9A-C所示的功能块结合操作。

参照图9A和10,所有的设备都包括1394设备找寻代理程序(1394DDA)404,用来在复位之后列举1394总线上的各设备,并将值写到本地1394 ROM空间402中,用于将该值传送到其它功能性代理程序(步骤500、502)。对于其它配置代理程序的同步(约束)开始,1394DDA代理程序404还设置‘配置操作’控制位。找寻代理程序/机制可使用器件而不是ROM空间来在配置代理程序之间传送信息,这些配置代理程序对于一个设备来说是本地的,并且,其中的信息不需要由其它设备查看。

<所有设备中的1394 ROM数据>

网络300中的所有设备包括与找寻和IP地址代理程序404和406分别相关的下列信息,用于1394配置ROM 402中的1394WEB:(1)内置64位GUID(在1394规范中的环球唯一ID);(2)来自范围为从‘10.1.1.1’到‘10.127.254.254’的RFC 1918专用地址空间的内置IP地址。制造商可以从GUID中选择一值,以使冲突的机会最小化。专用地址空间的上半部分(即10.128.1.1到10.254.254.254)保留给桥接网络上的设备;(3)在范围‘10.1.1.1’到‘10.127.254.254’内分配的IP地址(通过操作FWHCP代理程序406分配);(4)用于桥接网络上的IP设备的IP地址扩充叶;(5)1394设备的分配的计数(由1394DDA代理程序404分配);(6)控制/状态位,用于指示用于1394设备找寻代理程序404的配置进程同步控制,并用于指示IP地址配置(控制位指示配置正在进行中,因此,在ROM数据而不是控制位中的用于1394DDA和IP地址的各值不被检验或者写入,因此也不应当被使用)。这些位进一步指示哪个IP地址为有效(分配的或者内置的),并且FWHCP服务器代理程序406是否出现在设备中;(7)HTTP web服务器,允许设备文件空间中的文件被远程访问;和(8)包括实际‘图标’、‘名称’和‘标识语’HTML文件的设备信息202、204和其它可通过Web服务器访问的参考图形文件。上面汇总的信息详述在下面的1394ROM空间描述文件中。

<IEEE 1212配置ROM>

通用1394 ROM结构402的内容规定在IEEE1212r、IEEE1212和IEC 61883中。ROM结构402是分层信息块,其中该分层结构中较高的块指向它们下面的块。初始块的位置是固定的,而其它项目取决于零售商(vendor),但可由更高块中的项目规定。

表3示出配置ROM 402的Bus_Info_Block(总线信息块)和Root_Directory(根目录)。每一项目的第一字节被称为密钥(key)并识别项目的类型。下面的各项可以在使用EIA-775规范的所有设备的配置ROM中完成,这些设备包括诸如DTV的显示设备和诸如DVCR、STB等的源设备。根据每个设备所遵守的其它协议,可以有几种所需的其它结构。表3包括用于也符合IEC61883协议的设备的信息。Root_directory包含用于一个Model_Directory(模型目录)和三个Unit_Directory(单元目录)项目(IEC61883、EIA-775和1394WEB)的指针,用来指示该设备支持EIA-775以及1394WEB协议。根目录项目有助于其它1394设备找寻由该1394设备支持的协议和软件(也称为服务)。

                     <表3-配置ROM>

                偏移值(基地址FFFF F000 0000)

                  Bus_in_block(总线信息块)

偏移值

    04 0016    04 crc_length(crc长度)rom_crc_value(rom crc值)
    04 0416                      “1394”    04 0816  标志  保留  cyc_clk_acc  max_rec    保留    04 0C16    node_vendor_id(节点零售商标识符)chip_id_hi    04 1016                     chip_id_lo

其中,04 0C16和04 1016也称为64位GUID或者环球唯一ID。

                Root_directory(根目录)偏移值

    04 1416    root_length(根长度)         CRC    0316  model_vendor_id(模型零售商标识符)
    8116  vendor_name_textual_descriptor(零售商名称原文本描述符)偏移值    0C16  node_capabilities(节点性能)    8D16  node_unique_id(节点唯一标识符)偏移值    D116  Unit_directory(单元目录)偏移值(IEC 61883)    D116  Unit_directory(单元目录)偏移值(EIA-775)    D116  Unit_directory(单元目录)偏移值(1394WEB)    可选择的    xxxx16    C316  Model_Directory(模型目录)偏移值

IEC_61883单元目录示于表4中。该目录由根目录(即表3)中的Unit_Directory偏移值参考。在Unit_SW_Version(单元SW版本)字段中,最低有效位规定AV/C(0),就象在IEC 61883中所规定的。

               <表4-IEC_61883单元目录>

Unit_Directory(单元目录)(IEC_61883)

    目录长度                  CRC   1216  Unit_Spec_ID(单元规范标识符)(1394TA=00 A0 2D16)   1316  Unit_SW_Version(第一通过密钥=0116)   ….  《其它可能的字段》   ….  ….

EIA-775单元目录示于表5中。下面的EIA-775规定信息出现在EIA-775单元目录中。

                   <表5-EIA-775单元目录>

    目录长度    CRC 1216  Unit_specification_ID(单元规范标识符)(EIA-775=00506816) 1316  Unit_software_version(单元软件版本)(01010016) ….  《其它可能的字段》
….….

Unit_specification_ID规定负责设备的体系结构接口的组织和规范的身份(identity)。在本例的情况下,目录和身份值=00506816指的是EIA作为负责者并且指出EIA-775控制体系结构规范。

Unit software version标明由设备支持的EIA-775版本级。其格式示于表6中。

     <表6-Unit_software_version编码>

第一个八位字节(octet) 0116第二个八位字节        主要版本号(当前为0116)第三个八位字节        次要版本号(当前为0016)

1394WEB单元目录示于表7中。下面的1394WEB具体信息出现在1394WEB单元目录中。

                  <表7-1394WEB单元目录>

    目录长度                     CRC    1216 Unit_specification_ID(单元规范标识符)(1394WEB=00XXXX16)    1316 Unit_software_version(单元软件版本)(01010016)    3816 Discovery_control_bits(找寻控制位)    3916 Assigned_Count_of_1394_devices(分配的1394设备计数)    3A16 IP_Address_Build_in(内置的IP地址)    3B16 IP_Address_Assigned(分配的IP地址) IP_Address_Extension_Leaf(IP地址扩充叶)    --16 《其它可能的字段》

Unit_specification_ID规定负责单元的体系结构接口的组织和规范的身份。在本例的情况下,目录和身份值=00XXXX16指出负责者并且指出1394WEB控制体系结构规范。

Unit_software_version标明由设备支持的1394WEB版本级。其格式示于表8中。

      <表8-Unit_software_version编码>

第一个八位字节(octet) 0116第二个八位字节        主要版本号(当前为0116)第三个八位字节        次要版本号(当前为0016)

<Discovery_control_bits(找寻控制位)(3816)>

由IEEE 1212R规范章节8.8所允许的密钥值(3816)用作Discovery_control_bits即时值,该密钥值专用于目录和体系结构的所有者。

                <表9-Discovery_control_bits>

            FWHCP Server Agent Configuration operating.Do not  Which IP address?(FWHCP服务器代      use(ifTrue)(配置运行,不使用    (哪个IP地址?)理程序)             (如为真))X          Yes=1              1394 Dev.Count  IP-Address      Assigned_1Built-(1394设备计数)  (IP地址)        in_031 6 5 4  3                   2               1               0(LSB)

这些是在1394 ROM空间402中可以由本地和远程设备访问的控制位。这些控制位由IP地址配置代理程序406和用户接口描述文件生成代理程序408使用,如下面所进一步描述的。

在本发明的一个实施例中,所述控制位提供下列信息:

位0-Which IP address(哪个IP地址?)-指示使用了或者正在使用哪个IP地址,即,内置地址(=FALSE(伪))或者分配的地址(=TRUE(真))。这是通过操作IP配置代理程序FWHCP 406来设定的。

位1、2-Configuration Operation Do not use(配置操作不使用)-当被设定时,指示1394设备找寻处理并且单独指示IP配置代理程序404和406分别运行,因此,如果它们可以改变或者尚未写入,所指出的各值为无效。这些位是由本地(设备)1394DDA代理程序404设置的。1394DDA代理程序404清除1394 Dev.Count(设备计数)位,并且运行FWHCP代理程序406清除IP地址位。

位3-出现FWHCP服务器代理程序406-是在设备具有可操作的FWHCP代理程序406时设置的。该位和GUID是由FWHCP代理程序406使用的,用来确定哪一个FWHCP代理程序406将运行。

Assigned_Count_of_1394_devices(分配的1394设备计数)(3916)-网络300中各1394设备的计数的分配的即时值。该计数是在1394接口通过其自身份循环时所进行的。1394设备找寻代理程序404生成该值,该值被存储在ROM空间403中,用于以后分别由IP和UI配置代理程序406和408使用。

IP_Address_Build_in(内置的IP地址)(3A16)-分配的即时值。该地址是在制造时分配的并且被内置到设备中。如果该内置地址不能使用,则在分配的地址空间中存储替换的地址并且设置控制位来指示这种情况。

IP_Address_Assigned(分配的IP地址)(3B16)-分配的即时值。如果检测到相同的IP地址,则IP地址配置代理程序FWHCP 406分配该地址以避免冲突。此外,设置控制位来指示这种情况。

IP_Address_Extension_Leaf_for attached_network(用于附加网络的IP地址扩充叶)(BC16)-该目录项目是用于对于IP地址扩充表(参看表10)的数据叶的地址偏移值。所述数据叶包含用于所连接的非1394网络(但也可以是桥接的1394网络)上的各设备的IP地址。所述表包括在连接通向外来(非1394)网络的那些类型的通信设备(例如,网桥)中。所述表可被扩充为包括能满足需要的诸多IP地址。所述通信设备本身的地址不应被包括在该表中。

<表10-IP Address_Extension_Leaf(IP地址扩充叶)>

    叶长度-1(n)16    CRC-1616    IP地址1    ...    IP地址n

对于用于找寻控制位的控制字,使用用于实际找寻控制位字的ROM项目作为这里定义的字只不过是一种示例性实现方式。ROM没有被设计成可以有效写入(即,ROM区域必须被擦除,并且对这些区域的写入相对于其它硬件比如寄存器来说要慢)。在1394硬件中提供了寄存器,用于必须被频繁写入的数据。在另一种形式中,1394寄存器可被用于‘Discovrey control bits(找寻控制位)’控制字。寄存器处于也可以由其它设备访问的空间中,由此,另一设备可在ROM中查找该寄存器的地址,然后对该寄存器进行写入。

参照图9B,一个或多个设备包括IP地址配置代理程序(FWHCP)406(例如,所有的UI设备和网关设备以及可以作为控制发起者的任何其它设备)。FWHCP配置代理程序406访问跨越1394网络300的1394 ROM 402的数据中的所有设备的IP地址值。对于其它应用程序(例如,UI描述文件生成程序)开始的同步开始和结束,FWHCP代理程序406也访问‘配置运行’控制位。

参照图9C,能够显示用户接口的设备以及一些其它设备(例如,网关设备)可包括用于例如以HTML生成顶层UI描述文件250的UI描述文件生成代理程序408。由于如上面所详述的,每个网络300仅有一个IP配置代理程序406进行操作,因此不需要所有的设备都包括IP配置代理程序406,尽管所有的设备可以包括IP配置代理程序406。如果一设备具有运行中的IP配置代理程序406并且是用户接口设备,则该IP配置代理程序必须在UI描述文件生成代理程序之前进行操作。UI描述文件生成代理程序(UI descriptiongeneration agent,UIDGA)408利用包括在1394 ROM空间402中所定义的控制位的信息以及其它信息(例如,对于确定哪个FWHCP进行操作来说是表3的Bus Info Block(总线信息块)的环球唯一ID(GUID)),用来确定哪个IP配置代理程序406(如果在网络中有多个的话)进行操作、使启动同步,并用于访问使用中的IP地址。任何设备都可以具有并操作一UIDGA,以便制作HN Directory(HN目录)页(顶层找寻页)。在IP地址被配置之后,UIDGA读取这些地址,以便制作HN Directory页。在每个客户机设备中,当UI描述文件的生成结束时,GUI生成和运行时间环境410(例如,图2中的Web浏览器200)利用UI描述HTML文件250来访问所有设备的用于图标、名称和标识语的HTTP文件空间(Icon.HTM、Name.HTM和Logo.HTM包含在多个页204或者一个页204中),以便在该客户机设备中生成用来显示的全顶层GUI 220。在从各设备访问文件(例如,Icon.HTM、Name.HTM和Logo.HTM)的处理过程中,以及在依次进行的访问这些文件所参考的任何附加文件(例如,ICON.GIF和LOGO.GIF)的过程中,Web浏览器利用HTML文件250来呈现实际的GUI图形。

<1394设备找寻代理程序(1394DDA)>

参照图9A-9C和10,如前面所讨论的,网络300中的每个1394WEB设备可包括设备找寻代理程序404。设备找寻代理程序404列举连接到1394总线的1394地址空间中的1394设备,其中原始的(raw)找寻是在1394硬件中执行的。自身份和物理节点号码分配及其步骤是由接口硬件/固件执行的基本找寻处理。所有的设备都监测自身份循环,并记录存在的1394设备。这是用于任何1394设备的1394软件的一部分:(1)复位-在设备加电、设备连接和设备拆卸时,总线复位传播到所有的接口,(2)树识别-将一简单的网络拓扑结构(net topology)转换为树,以建立一ROOT(根),该ROOT是特定功能的主文件(master):总线循环主文件、总线时间的仲裁过程中的最高优先权,(3)自识别-分配物理节点号(地址)并且还与邻居交换速度性能。最高标号的节点具有竞争者位和链接位这两者,并且是同步资源管理器。

找寻代理程序404将各设备的最终计数值写入1394 ROM空间中,以使其与其它代理程序进行通信。设备找寻代理程序404是在1394复位循环之后所执行的第一个软件代理程序,而控制位(找寻控制位2和1、配置操作:1394DDA和IP Address(IP地址))用于使其它代理程序延迟执行,这些代理程序包括配置代理程序406和408,直到找寻代理程序404已经执行完毕为止。

在一个实施例中,每个设备中的1394DDA代理程序404执行步骤500、502,包括:(1)在设备的自身1394 ROM空间402中设置同步控制位(即,‘1394DDA正在进程中’以及‘IP配置正在进程中’位),用来指示1394DDA正在进程中以及IP配置正在进程中(如果1394DDA正在执行,则IP配置不会是正在进程中),并且指示1394设备计数以及IP地址的值无效,由此使所述控制位禁止其它代理程序(例如,408)永久运行;这样,1394 DDA执行,然后是所选出的FWHCP执行,再后是(通常是对于UI设备)UIDGA执行;(2)在1394复位之后对1394自识别序列的数目进行计数,以找出设备的数目并有效地找出它们的本地节点地址,以便由其它代理程序406、408使用;(3)将设备计数值写入设备的自身1394 ROM空间402中;以及(4)清除(例如,使变为伪)设备的自身1394 ROM空间402中用于‘1394DDA正在进程中,的同步控制位,其中‘IP配置正在进程中’位保持设置值,并在后面通过操作FWHCP代理程序406来清除。

利用网络通信(网桥)设备中的IP地址列表来进行配置的其它的体系结构是可行的。例如,桥接网络(例如,非1394网络)上设备的IP地址的IP地址列表可通过另外的方式被检查,即在IP配置阶段通过FWHCP代理程序406来检查,而不是仅仅在UIDGA阶段由UIDGA代理程序408来检查。这就允许FWHCP代理程序406检测和校正地址冲突,并因此允许进行操作,不需要具有两个独立定义的地址范围,这两个地址范围中的一个用于1394网络300,另一个用于非1394网络119。地址冲突的校正可以通过修改有冲突的1394设备的地址来完成,因为桥接网络IP地址列表不能由上述用于1394网络300的代理程序406、408来修改。如果FWHCP代理程序406可以在地址被允许在1394网络300上使用之前为检验冲突而检验桥接网络119中的地址,则配置会更加可靠。

<IP地址配置代理程序(FWHCP代理程序)>

参照图9A-C和10,IP地址配置软件代理程序(FWHCP)406操作时可以提供‘固定’IP地址管理并检测和校正大批量生产的1394设备中的IP地址冲突。所有的1394WEB UI设备都包括(并且其它的设备可以包括)FWHCP代理程序406。然而,在网络中仅有一个FWHCP代理程序406进行操作。1394DDA 404代理程序是在1394复位循环之后所执行的第一个软件代理程序,并且,如上面所提到的,1394DDA 404代理程序设置‘1394DDA正在进程中’和‘IP配置正在进程中’位,以延迟FWHCP代理程序406,直到1394DDA代理程序404已经执行完毕为止。

在一个实施例中,设备中的IP地址配置代理程序406执行一些步骤,这些步骤包括轮询1394DDA配置操作控制位(即,‘1394DDA正在进程中’位),以确定1394DDA配置软件代理程序404是否已经执行完毕。如果是这样,则FWHCP代理程序406使用由1394 DDA代理程序404确定的设备计数,并从每个设备中读取GUID和控制字(步骤504),以确定网络300中的哪个设备被选择执行其FWHCP代理程序406(步骤506)。所选择的设备是具有FWHCP代理程序406的设备,该FWHCP代理程序406发现其具有最高的GUID(步骤508)。其它设备中的所有其它FWHCP代理程序406都保持休眠状态(步骤510)。运行中的FWHCP代理程序406从每个本地节点(例如,出现在接口上的单元,主机)读取‘在使用中(in-use)’(有效)的IP地址(由Discovery control bits(找寻控制位)位0确定)并列表(步骤512)。在一种形式中,软件代理程序列出一个用于将IP地址以它们被读出的原样保存到‘阵列’中的列表(步骤514-518)。该列表在编译器和OS的控制下存储在存储器(RAM或者DRAM)中。正使用状态是由设置于设备中的一位确定的,该位指示内置或者分配的地址是否在使用中。在表7中,IP_address_assigned(分配的IP地址)和IP_address_built_in(内置的IP地址)在1394Web单元目录中。

运行中的FWHCP代理程序406在列表于其中的IP地址中检查所述列表中有无冲突(也可以使用其它的冲突检测和决策方法)(步骤520-522)。如果检测到冲突,则FWHCP代理程序例如通过用IP地址的最低有效6位来替代它们的6位节点地址来改变冲突的地址(步骤524)。仅执行最少数目的改变以避免冲突。如果冲突地址中的一个已经是分配的地址,则例如通过递增6位替代值对冲突内置地址优先改变上述地址,并且重新检查,直到解决冲突为止。FWHCP代理程序406将改变的值写回到设备,并且将控制位(Discovery_control_bits:位0)设置为指示所分配的IP地址在使用中,并且不再使用内置缺省值(步骤526)。对每个IP地址重复所述处理(步骤528)。在冲突决策处理之后,运行中的FWHCP代理程序406轮流访问每个设备,并将每个设备中的‘ IP配置正在进程中’位例如设置成‘伪’,以指示所指示的IP地址为有效。

<UI描述文件生成代理程序>

在常规的WWW操作中,用户访问相同的顶层页。然而,参照图4B、7和9-11,按照本发明的一个方面,所有的UI设备(例如,能够显示用户接口的设备)都包括UI描述文件生成代理程序(UI description generation agent,UIDGA)408,用以独立生成顶层UI页220,以便由用户控制局域网(例如,网络100、网络300等)上的设备。在一个例子中,客户机设备(例如,PC)动态生成本地保存的缺省页220,用于让用户控制连接到网络100的设备。这就允许每个UI设备(例如,DTV 102)例如使用用于所显示的各UI设备的更大更明显的图标来生成家庭网络的不同视图220。这样,用户就能真正意识到哪个UI设备‘正在这里’(在用户前面),或者,在室外访问的情况下,没有设备是‘正在这里’。没有UI的设备可以生成用于另一个设备的UI,但不能意识到该设备的类型(例如,电缆调制解调器生成用于室外HN设备的UI)。在此情况下,实际的UI设备是未知的。因此,在GUI中没有重要的特定设备。此外,连接到网络100的各设备的制造商们可以按需要将他们自己的GUI设计202、204提供于每个设备中。这以后就不会由现有的技术阻碍改进的浏览器和Web技术设计。

无UI的设备,尤其是那些执行网关功能的设备,也可以包括用来生成顶层GUI描述文件250的UI描述文件生成代理程序408,不包括用以生成和显示GUI 220的GUI生成和运行时间处理程序410(例如,Web浏览器200)。由于使用适当的地址(例如,使用本地HN上的RFC1918专用地址),可以允许外部WWW访问1394WEB网络设备。外部地址是分配的适合于因特网使用的‘真实的’IP地址。通常来讲,存在具有UIDGA 408的单元(例如,网关类型单元),表示家庭到外部因特网的连接。这种网关的UIDGA利用家庭的IP地址生成用于外部使用的不同的UI描述文件(远程访问情况不同于内部本地设备使用),所述家庭的IP地址具有扩充的链路,用来识别是哪个家电设备本地专用IP地址。

UI设备执行下列软件处理,以生成和显示网络100/300的显示外观220:(1)上面所述的1394设备找寻代理程序404,(2)UI描述文件生成代理程序(UIDGA)408,和(3)GUI生成和运行时间(例如,Web浏览器200)处理程序410。参照图11,在一个实施例中,设备中的UIDGA代理程序408执行一些步骤,其中包括:在访问任何进一步的IP信息之前,轮询该设备自身1394ROM 402中的IP地址配置位,以确保完成FWHCP代理程序406(步骤600)。当完成FWHCP代理程序406时,利用由1394 DDA代理程序404生成的设备的计数,UIDGA代理程序408访问当前连接到网络的每个设备的控制字,以确定将‘配置操作’设置为伪,并将IP地址位设置为‘在使用中’(UIDGA代理程序408制作顶层HTML页、HN Directory(HN目录)页220,例如在图5-6中所示的页)。之后,UIDGA代理程序408读取实际的在使用中的IP地址值,并建立当前连接到网络300的各设备的IP地址的完整列表。该IP地址列表包括来自每个设备的信息(例如,图标、标识语、名称等)并且是利用每个设备的IP地址以HTML写成的。在其可包括地址之前,UIDGA 408通过访问每个设备并检验查看哪个地址处于在使用中来找出每个设备的地址,所述检验查看是通过读取表9中的discovery_control_bit控制位(位0)来完成的。UIDGA 408读取表7中内置或者分配的地址。对于与桥接网络通信的设备,就象由该设备的1394 ROM 402中的现有的扩充IP地址列表项目所确定的那样,UIDGA代理程序408从列表(IP_Address_Extension_Leaf(IP地址扩充叶))中读取扩充IP地址,以允许那些设备被包括在GUI 220中。项目BC(IP_Address_Extension_Leaf)包含指向实际数据叶的参考链路地址。在所连接的桥接网络上的各设备仅包括在IP_Address_Extension_Leaf列表中,其条件是他们也支持1394WEB类型的服务,即他们具有Web服务器以及Icon.HTM等和控制页(index.htm)。

UIDGA代理程序408读取IP地址列表(步骤602),并且利用该IP地址列表例如以HTML(例如,附录1)生成顶层网络UI描述文件250(图9C)(UIDGA输出HN_Directory、顶层网络UI页、HTML文件)(步骤604)。UIDGA代理程序408将超链接中的IP地址使用于每个设备的icon.htm、name.htm和logo.htm文件。UIDGA将包括参考文件的HTML文件写入到每个找到的设备的HTML页,即ICON.HTM、NAME.HTM、LOGO.HTM(例如,附录2、3、4)。然后,UIDGA代理程序408利用HTML文件而在顶层UI描述文件250中查阅包括图标和标识语图形文件以及名称数据的项目,而不是包括原始icon.gif或logo.gif及原始名称文本的项目(步骤606)。这就允许所述项目被相应的设备改变,以反映由制造商客户化或者由设备的用户配置的当前状态,并且不会造成控制UI设备中顶层HTML UI描述文件250中的任何变化。尽管在示例的GUI页220中示出了每个设备有一个图形(图5-6),客户化能允许包括由ICON.HTM或者LOGO.HTM参照的多于一个的图形文件,以及NAME.HTM中的更多个文本。在一个实施例中,各HTML方框(frames)被用于完成UI描述文件250,就象下面进一步描述的例子所说明的。使用方框能使‘坏公民’设备的事件中GUI 220的出现更加稳定。例如,一个在其‘名称’方框中出现太多字或者过大文本的设备仅仅会影响该设备的GUI外观(会有一些截短和不显示的字),并且不会负面影响UI设备中整个顶层GUI220的外观。然后,UIDGA调用客户机设备中的GUI生成处理程序410(例如,浏览器)来生成和显示用户接口(步骤608)。

<GUI生成和运行时间处理程序>

GUI生成处理程序410(例如,Web浏览器200)利用例如HTML的UI描述文件250来生成UI设备上的GUI页220。在一个例子中,为对消费电子设备(例如,DTV)提供无键盘的操作,浏览器200在开始默认读取和呈现本地生成的‘top-level-devices.html(顶层设备.html)’描述文件250,以生成网络顶层控制GUI 220。这里所使用的“本地”意味着在相同的设备(具有生成网络设备的设备本身的HN目录(顶层)GUI的UIDGA的UI设备)中。HN目录、顶层网络UI和找寻页是相同的。这对于具有键盘的个人计算机(PC)来说不必是默认的。对于CE设备来说,浏览器200的启动被延迟到由UIDGA代理程序408完成UIDGA缺省页250的生成之后。在UIDGA代理程序408不能完成其任务的情况下,浏览器200则会显示说明发生网络配置错误的另一个UI页220(例如,“由于xxxxxx而不能生成HN_Directory页。请尝试断接设备xxxxxxx。发生网络配置错误号为xxxxxx。联系服务为:电话服务xxx-xxx-xxxx或者Web服务http:∥www.service.com.”)。

为生成GUI 220,浏览器200在每个所参照的设备中从设备信息202、204(即,在UI描述文件中,其中例如ICON.HTM是在HN_Directory页HTML文件中)中提取‘icon.htm’、‘name.htm’和‘logo.htm’文件,就象由HTMLUI描述文件250所定义的那样。这些页202、204的内容(例如,图标图形)在用户客户化之后不需要是静态的,也不能被动态改变来反映设备状态变化。为显示最新的顶层页220,浏览器200不对‘icon.htm’、‘name.htm’和‘logo.htm’文件进行高速缓冲(cache)。在另一种形式中,总是先进行检验,以确定设备是否已对其拥有的HTML文件202、204做了任何改变。HTTP“条件性获得”用于检验被控设备的状态。根据返回的状态代码,浏览器200从其高速缓冲存储器(cache)中进行读取,或者从设备中提取新的或已更新的HTML文件202、204的复制件。HWW GUI显示器不会受影响,除非被控设备中有任何变化。

浏览器200在顶层HN目录完全生成之前不打算显示该顶层HN目录。如果HTML 250在某个合理的时间量之内没有生成,则浏览器显示一替换页。如果网络配置错误是问题的根源,则该替换页可以提供技术支持或者用尸诊断帮助。

无论何时用户返回到顶层HN目录或者使其被刷新,浏览器200都重新显示页220的整体。这是必须的,因为作为顶层HN目录的基础的HTML250可能在向网络100添加设备或从网络100去除设备的情况下已被重新生成。也可能更新设备图标,以反映它们的设备操作状态的变化。这样,由EIA-775.1设备实现的浏览器使用HTTP“条件性获得”请求来确定web页或者图形的新复制件是否是从服务器中恢复的。

在这个方面,本发明提供了一种用户接口描述文件,其中完全利用参考文件(即在抽象中)进行设备的用户找寻,其中这些参考文件是用于每个设备的寻找信息(例如,文本和/或图形)的‘容器(containers)’并且驻留在每个设备上。每个‘容器’包括实际的原文信息和/或对于一个或多个图形格式信息文件的参考文件,其中每个文件可包括一个或多个图形和/或文本。使用参考文件‘容器’能允许每个设备选择其优选的UI内容或图形格式或者改变其要显示的UI内容(通过改变所参照的文本或图形信息来进行),而不需要具有以任何方式改变的UI描述文件页。因此,不需要改变与找寻UI描述文件的生成代理软件进行的通信。在一种形式中,设备参考它们的例如ICON和LOGO图形文件,这些文件间接使用通过用HTML方框创建网络顶层描述文件形成的HTML文件。类似地,显示在图标下的设备名称由NAMEHTML文件来表示。HTML文件用于参考比如图标和标识语图形文件以及名称数据,而不包括原始icon.gif或者logo.gif和原始名称文本。这就允许该项目被改变以反映由制造商客户化或者由设备的用户配置的当前状态,并且不会造成顶层HTML描述文件中的任何变化。这种层次的抽象允许顶层UI描述文件始终相同,而不管要显示的图形ICON和LOGO文件名称和类型及NAME文本。此外,设备也可以用于不同地、多样地或者动态地改变显示在顶层GUI中的图形文件和文本,并且不需要改变与UIDGA的通信。每当GUI重新显示时都会自动包括该变化。在使用非显示图形或文本的‘坏公民’设备的事件中,使用方框也能使GUI显示更加稳定,因为错误被限制到特定的方框并且不影响整个GUI。每当GUI重新显示时都会自动包括该变化。

在一个例子中,由任何网络设备并且一定是由能够显示UI的设备(UI设备)来独立地生成网络设备顶层UI描述文件。生成每个设备中的用户接口而不是生成中央UI就能允许设备优选地在GUI中显示其本身的设备图标/文本。此外,每个GUI都是制造商客户化的、用户可配置的并且还是更可靠的,因为它并不取决于另一个设备,例如,单一中央服务器。对此已由上面的1394方案示范证明。多重UI生成之所以能实现是因为所有的设备IP地址都是可经1394接口访问的。UI设备(具有浏览器)包括UIDGA代理程序,用来在连接设备或者设备上电时1394复位循环之后生成它们自己的顶层GUI描述文件。

所有的设备都独立生成用于控制局域网的顶层UI页。这点与其中用户访问相同的顶层页的常规WWW操作不同。按照本发明的一个方面,客户机设备(例如,PC)动态生成用于任何目的的本地保存的缺省页,允许每个设备(例如,DTV)例如利用用于其自身显示的更大更明显的图标来生成不同形式的家庭网络。此外,制造商们可在一定范围内制作它们自身的比其它人更好的GUI设计。此外,改进的浏览器和Web技术设计不需要受到更早技术的阻碍。

参照附录1-4,其中提供了用于下列各项的示例:(1)顶层页描述文件250(附录1);(2)Background.htm(附录2);(3)Icon.htm(附录3);和(4)Name.htm(附录4)。

尽管上面已参照本发明的优选实施例对本发明进行了描述,但本发明也可以有其它形式。因此,所附的权利要求书不应当被限定为对这里所含的优选形式的描述。

                      工业应用性

按照本发明的用于在连接到网络系统的多个多种设备中生成用户接口的方法和系统可应用于具有所连接的多媒体设备的家庭网络,其中所述用户接口用于控制连接到一网络的各设备。所述多媒体设备可包括PC、VCR、摄录机、DVD和HDTV等。

附录1-  顶层页例子<HTML><HEAD><TITLE>HN Devices Page</TITLE></HEAD><FRAMESET ROWS=″2%,47%,2%,22.5%,2%,22.5%,2%″border=0color=black><NOFRAMES>Sorry does not support frames</NOFRAMES><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET COLS=″1.2%,23.5%,1.2%.48.2%,1.2%,23.5%,1.2%″><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″48%,4%,48%″><FRAMESET ROWS=73%,27%″>

<FRAME SRC=″http:∥10.1.1.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.1.1.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.1.1.10/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME         SRC=″    http:∥10.1.1.10/name.htm″SCROLLING=″no″NORESIZE></FRAMESET></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.1.22.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.1.22.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″48%,4%,48%″><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.1.229.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.1.229.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.30.30.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.30.30.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESETCOLS=″1.2%,23.5%,1.2%,23.5%,1.2%,23.5%,1.2%,23.5%,1.2%″><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME  SRC=″http:∥10.41.1.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.41.1.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.41.21.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.41.21.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.45.1.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.45.1.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.100.1.1/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME SRC=″http:∥10.100.1.1/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESETCOLS=″1.2%,23.5%,1.2%,23.5%,1.2%,23.5%,1.2%,23.5%,1.2%″><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.122.22.1/eia.htm″SCROL LING=″no″NORESIZE>

<FRAME SRC=″http:∥10.122.22.1/eia.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.122.122.122/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME    SRC=″    http:∥10.122.122.122/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.122.122.123/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME    SRC=″    http:∥10.122.122.123/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″73%,27%″>

<FRAME SRC=″http:∥10.122.122.124/icon.htm″SCROLLING=″no″NORESIZE>

<FRAME  SRC=″http:∥10.122.122.124/name.htm″SCROLLING=″no″NORESIZE></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET></FRAMESET><FRAMESET ROWS=″100%,0%″><FRAME SRC=″background.htm″SCROLLING=″no″NORESIZE></FRAMESET></FRAMESET><BODY BGCOLOR=″#FFFFF0″  TEXT=″#000070″  LINK=″#0000ff″ALINK=″#FF0000″VLINK=″#007986″></BODY></HTML>

附录2-  Background.htm  例子<HTML><HEAD><TITLE>Background</TITLE></HEAD><BODY BGCOLOR=″#007986″></BODY></HTML>

附录3-  Icon.htm  例子<HTML><HEAD><TITLE>Device Icon</TITLE></HEAD><BODY BGCOLOR=″#FFFFF0″  TEXT=″#000070″  LINK=″#0000ff″ALINK=″#FF0000″VLINK=″#007986″><br><br><CENTER><IMG SRC=″icon.gif″border=0></CENTER></BODY></HTML>

附录4-  Name.htm  例子<HTML><HEAD><TITLE>Device Name</TITLE></HEAD><BODY BGCOLOR=″#FFFFF0″  TEXT=″#000070″  LINK=″#0000ff″ALINK=″#FF0000″VLINK=″#007986″><CENTER><FONT size=+0>Samsung Device</font></CENTER></BODY></HTML>

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号