用于为数据处理终端提供网络连接的装置和方法 【技术领域】
本发明涉及一种数据通信系统,特别涉及一种用于为数据处理终端提供网络连接的装置和方法。背景技术
调制解调器是一种调制器和解调器,并且是一种网络连接设备。调制解调器还是一种能够将计算机中的数字信号转换(即,调制)成模拟信号以用于通过通信线路传送模拟信号,并且能够将来自通信线路的模拟信号转换成(即,解调)可被计算机理解的数字信号的数据通信设备。
调制解调器还被称为是数据装置,它是计算机通信中不可缺少的硬件。调制解调器主要分成两类,一类是在专线上使用的专线调制解调器,另一类是在诸如普通电话的交换线路上使用的拨号调制解调器。近年来,家庭网络已经日益突显,在这种家庭网络环境下,可以有两个或更多的个人计算机被安装用于家庭使用。
本发明人发现,为了有助于这些终端的网络化,有必要对用于为数据处理终端提供网络连接的装置和方法进行改进。发明内容
因此,本发明是为解决现有技术中所出现的上述问题而作出的,本发明的一个目的是提供一种装置和方法,它们能够利用调制解调器在用户数据终端之间进行数据通信,并且不需要安装额外的设备,如集线器(hub)、局域网(LAN)卡以及其他设备。
本发明地另一个目的是提供一种装置和方法,它们能够利用一个能够同时支持以太网端口和通用串行总线(USB)端口的调制解调器在两个用户个人计算机(PC)之间进行数据通信,并且不需要额外的设备,如集线器、局域网(LAN)卡以及其他设备。
本发明还有一个目的是提供一种装置和方法,它们能够利用一网络连接设备为多个数据处理终端提供网络连接。
为了实现上述目的,本发明提供了一种与通信线路连接并且可为数据处理终端提供网络连接的装置,该装置包括:以太网接口,用于提供与第一数据处理终端的连接;通用串行总线(USB)接口,用于提供与第二数据处理终端的连接;线路接口,用于提供与所述通信线路的连接;以及控制部分,用于以分组的目的地地址为参考,对与从所述各个接口之一接收的分组的目的地相对应的接口进行判断,并且将接收到的分组发送给各个接口中的至少一个接口。
根据本发明的另一个方面所述,它提供了一种能够利用网络连接装置为第一和第二数据处理终端提供网络连接的方法,所述网络连接装置包括公共网络线路接口、以太网接口、通用串行总线(USB)接口、用于控制整个网络连接设备的控制部分、以及含有地址学习表的存储器,所述地址学习表可在所述控制部分的控制下登记通过所述以太网接口接收到的第一分组的源地址,在该网络连接装置中,所述以太网接口与所述第一数据处理终端连接,并且所述USB接口与所述第二数据处理终端连接,这种方法包括以下步骤:第一步,如果通过所述以太网接口接收到所述第一分组,则将所述第一分组的源地址登记到所述地址学习表中;第二步,如果含有登记的源地址的所述第一分组的目的地地址与所述第二数据处理终端相对应,则将所述第一分组发送给所述USB接口;第三步,如果通过所述USB接口接收到一个第二分组,则判断所述第二分组的目的地地址是否登记到所述地址学习表中;以及第四步,如果判断出所述第二分组的目的地地址已登记到所述地址学习表中,则将所述第二分组发送给所述以太网接口。
为了实现符合本发明原理的上述及其它目标,如具体化以及广泛描述的那样,本发明提供了一种与通信线路连接并且可为数据处理终端提供网络连接的装置,该装置包括:以太网接口,用于提供与至少一个第一数据处理终端的连接;通用串行总线(USB)接口,用于提供与至少一个第二数据处理终端的连接;线路接口,用于提供与所述通信线路的连接;以及控制部分,用于确定从所述以太网接口、串行总线接口以及线路接口中选择出来的至少一个接口接收到的分组的目的地,所述控制部分根据确定出来的目的地,将接收到的分组发送给至少一个所述接口。
为了实现符合本发明原理的上述及其它目标,如具体化以及广泛描述的那样,本发明提供了一种与通信线路连接并且可为数据处理终端提供网络连接的装置,该装置包括:以太网接口,用于提供与多个第一数据处理终端的连接;通用串行总线(USB)接口,用于提供与至少一个第二数据处理终端的连接;线路接口,用于提供与所述数据通信线路的连接;以及控制部分,用于对地址学习表中所登记的源地址的数目进行计数;当源地址的计数值没有超过预定值并且源地址尚未被记录入表中时,所述控制部分将接收到的分组的源地址登记到地址学习表中;当源地址的计数值超过预定值时,所述控制部分不将接收到的分组的源地址登记到地址学习表中;接收到的分组来自从所述以太网接口、串行总线接口以及线路接口中选择出来的至少一个接口;当所述控制部分对接收到的分组的源地址进行登记时,所述控制部分确定出接收到的分组的目的地并根据该目的地将接收到的分组发送给至少一个所述接口。
为了实现符合本发明原理的上述及其它目标,如具体化以及广泛描述的那样,本发明提供了一种可为数据处理终端提供网络连接的装置,该装置包括:与一网络连接并且含有以太网接口和通用串行总线(USB)接口的网络连接设备;与所述以太网接口连接的集线器;与所述集线器相连的多个第一数据处理终端;以及与所述通用串行总线接口连接的第二数据处理终端;所述网络连接设备包括:存储器,其中含有用于登记接收到的分组的源地址的地址学习表;以及控制部分,用于根据所述第一源地址是否被登记到表中并且根据是否已经有预定数目的终端被登记到表中,有选择地将第一接收分组的第一源地址记录到表中;当所述第一分组通过所述以太网接口被接收到,并且所述第一分组具有登记在表中的第一源地址而且所述第一分组含有的第一目的地地址与所述第二数据处理终端相对应时,所述控制部分将第一分组发送给通用串行总线接口;所述控制部分根据第二分组的第二源地址是否被登记在表中并且根据是否已经有预定数目的终端被登记入表中,有选择地将第二接收分组的第二源地址登记到表中;当所述第二分组通过所述通用串行总线接口被接收到,并且所述第二分组具有登记在表中的第二源地址而且所述第二分组含有的第二目的地地址与至少一个所述第一数据处理终端相对应时,所述控制部分将第二分组发送给所述以太网接口。
为了实现符合本发明原理的上述及其它目标,如具体化以及广泛描述的那样,本发明提供了一种方法,该方法包括以下步骤:利用网络连接设备为至少一个第一数据处理终端以及一个第二数据处理终端提供网络连接,所述网络连接设备含有公共网络线路接口、以太网接口、通用串行总线(USB)接口、用于控制网络连接设备的控制部分、以及含有地址学习表的存储器,所述地址学习表在控制部分的控制下登记通过以太网接口接收到的第一分组的第一源地址,所述以太网接口与所述第一数据处理终端相连接,所述通用串行总线接口与所述第二数据处理终端相连接;当所述第一分组通过所述以太网接口被接收到并且当表中源地址的预定数目尚未被超过时,将所述第一分组的第一源地址登记到所述地址学习表中;当含有登记的源地址的所述第一分组的第一目的地地址对应于所述第二数据处理终端时,将所述第一分组发送给所述通用串行总线接口;当一个第二分组通过所述通用串行总线接口被接收到时,确定何时将所述第二分组的第二目的地地址登记在地址学习表中;以及当确定出所述第二分组的第二目的地地址已被登记在地址学习表中时,将所述第二分组发送给所述以太网接口。
为了实现符合本发明原理的上述及其它目标,如具体化以及广泛描述的那样,本发明提供了一种方法,该方法包括以下步骤:利用一网络连接设备为多个第一数据处理终端以及至少一个第二数据处理终端提供网络连接,所述网络连接设备含有公共网络线路接口、以太网接口、通用串行总线接口、用于控制网络连接设备的控制部分、以及含有地址学习表的存储器,所述地址学习表在控制部分的控制下登记通过以太网接口接收到的第一分组的第一源地址,所述以太网接口与一个集线器(hub)相连接,该集线器与多个第一数据处理终端相连,所述通用串行总线接口与所述第二数据处理终端相连接;当通过所述以太网接口接收到所述第一分组时,根据第一源地址是否被登记地址学习表中,并且根据可通过所述集线器与所述以太网接口连接的第一数据处理终端的预定数目是否被超过,有选择地将所述第一分组的第一源地址登记到所述地址学习表中;当含有被登记的源地址的所述第一分组的第一目的地地址对应于所述第二数据处理终端时,将所述第一分组发送给所述通用串行总线接口;当通过所述通用串行总线接口接收到第二分组时,确定所述第二分组的第二目的地地址是否被登记在地址学习表中;以及当确定出所述第二分组的第二目的地地址已被登记在地址学习表中时,将所述第二分组发送给所述以太网接口。
为了实现符合本发明原理的上述及其它目标,如具体化以及广泛描述的那样,本发明提供了一种方法,该方法包括以下步骤:接收第一分组;搜索并检查接收到的第一分组的第一源地址是否被登记到一个地址学习表中;当所述第一源地址未登记在所述表中时,确定所述表中源地址的数目是否超过了一个预定值;当所述第一源地址未登记在所述表中并且所述表中的地址的预定数目已被超过时,丢弃所述第一接收分组;当所述第一源地址未登记在所述表中并且所述表中的地址的预定数目未被超过时,将所述第一源地址登记在所述表中;当所述第一接收分组的第一源地址登记到所述表中时,对所述第一接收分组的第一目的地地址进行确定;当所述第一目的地地址对应于一个广播分组时,将至少第一接收分组发送给多个端口;当所述第一目的地地址与一个广播分组不相符时,将所述第一接收分组通过一目标端口发送给与所述第一目的地地址相对应的目标数据处理终端,所述目标端口从包括至少第一以太网端口和至少第一通用串行总线端口在内的多个端口中选出。
接下来将通过以下段落的文字说明并参考以举例方式提出的附图对本发明进行更加具体的说明。通过以下的文字说明并参考附图,本发明的其它优点和特征将变得更加显而易见。附图说明
在被引入作为本说明书一部分的各个附图中示出了本发明的多个实施例,它们与前面对本发明的总体描述以及以下的详细说明一起用于说明本发明的原理。
图1示出了一种有线系统的网络结构的示意图;
图2示出了根据本发明原理所述的一种电缆调制解调器的硬件结构的示意图;
图3示出了根据本发明原理所述的一种含有以太网端口和通用串行总线(USB)端口的电缆调制解调器的外观示意图;
图4用于解释可与根据本发明原理所述的电缆调制解调器的以太网端口及通用串行总线(USB)端口连接的用户个人电脑数目的示意图;
图5示出了根据本发明原理所述的当接收到来自以太网端口的分组时电缆调制解调器的中央处理器(CPU)的控制过程的流程图;
图6示出了根据本发明原理当接收到来自通用串行总线(USB)端口的分组时电缆调制解调器的中央处理器(CPU)的控制过程的流程图;
图7示出了根据本发明原理所述的电缆调制解调器中的分组数据流的示意图;
图8示出了根据本发明原理所述的分组数据结构的示意图。具体实施方式
虽然以下参考了其中示出了本发明多个优选实施例的附图对本发明进行更加全面的说明,但所属领域的技术人员在看完前面的说明之后就应该明白,可以在实现本发明有益效果的同时对其进行修改。因此,以下的说明应被认为是针对所属领域技术人员而作的主要技术说明,而不是对本发明的限制。
以下将对本发明的图解实施例进行说明。为了清楚起见,本文中并没有对实际应用中的所有技术特征进行说明。在下面的说明中,公知的功能、结构和配置都未得到详细说明,因为这些不必要的细节可能会使本发明变得模糊不清。应该理解,在对任何实际实施例的开发中,为了实现开发者的特殊目标,必须作出多种与具体应用有关的决定,例如与系统有关的兼容性以及与商务有关的限制性,等等,它们都根据具体应用的不同而不同。另外,还应该注意,这种开发努力可能会十分复杂并且耗费时间,但对于从本文中受益的那些普通技术人员来说,这不过是例行公事而已。
为了支持多个个人电脑之间的联网,用户需额外购买集线器(hub)、局域网(LAN)卡、以及其它可能用到的硬件和软件。这是因为一个个人电脑只与一个调制解调器连接。为了利用一个调制解调器在两个或多个个人电脑之间进行数据通信,就需要购买和安装独立的交换集线器以及用于LAN通信的局域网(LAN)卡。之后,将调制解调器与集线器相连,将两个或多个个人电脑与该集线器相连接,并且将用于在个人电脑之间进行局域网通信的LAN卡安装在各个个人电脑中。
与此同时,必须将最新安装的高速调制解调器终端(例如,x-数字用户线路(xDSL)调制解调器、电缆调制解调器、等等)与个人电脑之间的接口从只支持初始以太网接口的类型改变成可以支持允许热插拔的通用串行总线(USB)接口的类型。因此,如果可以利用一个支持普通以太网接口和USB接口的调制解调器在两个个人电脑之间进行数据通信,而无需额外安装集线器和单独的局域网(LAN)卡,就可以为用户带来极大的便利和经济利益。
为了能够通过作为常用网络连接设备的调制解调器在两个个人电脑之间进行数据通信,而且不需要安装额外的集线器和单独的局域网(LAN)卡,本发明的实施例中采用了一种能够同时支持以太网端口和通用串行总线(USB)端口的调制解调器。根据本发明所述的这种调制解调器是网络连接设备的一个例子。调制解调器通常都支持以太网端口。最近,一种能够支持通用串行总线(USB)端口(它是一种新的数据接口)的调制解调器也得到了采用。
能够同时支持以太网端口和通用串行总线(USB)端口的调制解调器可以是电缆调制解调器或者是非对称数字用户线路(ADSL)调制解调器。在本发明的实施例中,采用电缆调制解调器作为同时支持以太网端口和USB端口的网络连接设备的一个例子。但是应该明白,本发明的范围并不仅限于电缆调制解调器,它可被应用到任何能够同时支持以太网端口和USB端口的网络连接设备当中,如电缆调制解调器、ADSL调制解调器,等等。电缆调制解调器是这样一种设备,它能够为使用光纤同轴电缆混合(HFC)网络的用户提供极高速的互联网通信服务。由于利用电缆调制解调器进行的极高速互联网服务是一种使用现有有线电视网络的服务,因此它对有线电视的用户是很有利的。在使用电缆调制解调器的情况下,由于将光缆的高速度应用到互联网上,因而可以提供即时的服务。
图1示出了采用电缆调制解调器的有线系统的网络结构。参考图1,该有线系统主要分成三个部分:电缆调制解调器终端系统(CMTS)2,也称为数据转发器;用户家庭设备13;以及互联网中心设备17。电缆调制解调器终端系统(CMTS)2控制包括电缆调制解调器12在内的全部电缆调制解调器,将数字数据转换成射频(RF)信号,并且通过光纤同轴电缆混合(HFC)网络8将RF信号提供给相应的电缆调制解调器12。用户家庭设备13包括通过分路器与光纤同轴光缆混合(HFC)网络8连接的电缆调制解调器,以及与电缆调制解调器12相连接的用户室内设备(CPE)14。
互联网中心设备17包括各类服务器18、20和22。服务器18是一个用于管理本地信息的本地服务器。服务器20是一个网络管理系统(NMS)服务器,其中安装有用于控制有线系统的网络管理系统(NMS)程序。服务器22是一个含有动态主机控制协议(DHCP)、一般文件传输协议(TFTP)以及延迟时间(TOD)的服务器。服务器22中安装有用于向电缆调制解调器12分配网际协议(IP)的DHCP程序、用于传输电缆调制解调器12所属配置文件的一般文件传输协议(TFTP)程序、以及用于设定电缆调制解调器12中的当前时间的延迟时间(TOD)程序。各个服务器18、20和22都与一个10BaseT集线器16相连。此10BaseT集线器16是在星形拓扑结构的网络中起到中心角色的设备,它连接了电缆调制解调器终端系统(CMTS)2、互联网24、以及各类服务器18、20和22。
为了传输至用户家庭设备13的电缆调制解调器,从电缆调制解调器终端系统(CMTS)2输出的信号是一个中频(IF)信号。该中频(IF)信号被加载到一个上行转换器4上,并被上行转换器4转换成射频(RF)信号。例如,上行转换器4将从电缆调制解调器终端系统(CMTS)2输出的44兆赫(MHz)中频(IF)信号转换成453MHz或99MHz的射频信号。经上行转换器4转换后的射频(RF)信号通过一个同向双工滤波器6传输至光纤同轴电缆混合(HFC)网络8。
有线系统中所使用的频率主要分成下行(D/S)频率和上行(U/S)频率。下行(D/S)频率为从电缆调制解调器终端系统(CMTS)2向电缆调制解调器12方向传输的88~860兆赫(MHz)。上行(U/S)频率则为当电缆调制解调器12向电缆调制解调器终端系统(CMTS)2发送数据时所使用的5~42MHz的频率。这两类频率由同向双工滤波器6合成(即,下行)或分离(即,上行)。同向双工滤波器6在从电缆调制解调器终端系统(CMTS)2至电缆调制解调器12的下行方向中将下行频率和上行频率合成起来。同向双工滤波器6在从电缆调制解调器12至电缆调制解调器终端系统(CMTS)2的上行方向中将下行频率和上行频率分离开来。通过光纤同轴电缆混合(HFC)网络8传输的数据通过一个分路器10被分离开,然后经分离的数据被传输至用户的各个电缆调制解调器12中。
图2示出了根据本发明一个实施例所述的电缆调制解调器的硬件结构。该电缆调制解调器12含有这样一种结构,它能够同时支持以太网端口和通用串行总线(USB)端口。图3是可以同时支持以太网端口和通用串行总线(USB)端口的电缆调制解调器的外观。
参考图2,中央处理器(CPU)控制整个电缆调制解调器。闪速存储器32中保存了由CPU30执行的实时操作系统(OS)程序。动态随机存储器(DRAM)34是一种典型的存储器,其中保存有处于CPU30控制之下的各种数据。闪速存储器32是这样一种存储器,即使在断电的情况下,其中所保存的数据也不会被删除,在闪速存储器32中保存了实时操作系统(OS)程序。如果电源接通,则实时操作系统(OS)程序将被拷贝入动态随机存储器(DRAM)34,然后该程序被执行以启动电缆调制解调器。
从电缆调制解调器终端系统(CMTS)2输出的下行信号被按照射频(RF)信号的形式通过光纤同轴电缆混合(HFC)网络8和分路器10提供给电缆调制解调器12。下行信号通过电缆调制解调器12的一个RF有线端口56被加载至射频(RF)部分36的电缆调制解调器物理层(CBLPHY)40,然后被电缆调制解调器介质访问控制(CBL MAC)部分38解调成数字数据。之后,经解调的数字数据通过内部数据总线被传送至中央处理器(CPU)30,并且分组数据通过以太网端口58或通用串行总线(USB)端口60被传送至目的地地址。图2还示出了以下三个接口:与射频(RF)有线端口56相邻的有线接口(I/F);与以太网端口58相邻的局域网(LAN)接口(I/F);以及与USB端口60相邻的通用串行总线接口(I/F)。局域网接口也可被称为一种以太网接口。有线接口也可被称为一种线路接口。
图2所示的电缆调制解调器12配备有以太网端口58、USB端口60、用于支持以太网端口58的以太网部分、以及用于支持USB端口60的USB部分48。以太网部分42包括一个以太网物理层(ETH PHY)46和一个以太网介质访问控制(ETH MAC)部分44。USB部分48包括一个USB物理层(USB PHY)50和一个USB介质访问控制(USB MAC)部分48。
图3中示出了图2所示的射频(RF)有线端口56、以太网端口58以及通用串行总线(USB)端口60的外观,并且还示出了一个未在图2中示出的电力电缆端口62的外观。
在本发明的实施例中,可以利用电缆调制解调器12中的以太网端口58和通用串行总线(USB)端口60来执行与电缆调制解调器12连接的两个或多个用户个人电脑之间的数据通信,而无需其它设备(即,无需额外的集线器也无需局域网卡)。因此,在本发明的实施例中,在电缆调制解调器12的以太网端口68与USB端口60之间加入了分组交换功能。用户通常将桌面个人电脑(PC)与以太网端口58连接,并将笔记本个人电脑(PC)与支持热插拔的USB端口相连。这是因为与以太网端口58连接的局域网(LAN)电缆允许最大为100米的通信距离,而与通用串行总线(USB)端口连接的通用串行总线(USB)电缆则只允许最大为5米的通信距离。通过使用集线器70,在将笔记本电脑和桌面电脑同时与以太网端口58连接时的距离限制内就不会出现障碍。
如果按照本发明的实施例所述在电缆调制解调器12的以太网端口68与通用串行总线(USB)端口60之间加入分组交换功能,则可以在桌面电脑与笔记本电脑之间轻松地共享数据。这样就不需要在笔记本电脑中安装昂贵的个人电脑存储卡国际协会(PCMCIA)局域网(LAN)卡。
图4用于解释可与本发明实施例所述电缆调制解调器12的以太网端口及通用串行总线(USB)端口连接的用户个人电脑的数目。图4中示出了与USB端口60连接的一个电脑80。还有多个电脑82-1至82-n与集线器70连接,集线器70则与图4中所示的以太网端口58相连。为了获得增强的服务质量,最好对与以太网端口58相连的电脑的数目进行限制。
在本发明的实施例中,用一个地址学习表作为限制与以太网端口58相连的电脑的数目的方法。该地址学习表存储在电缆调制解调器12的动态存储器(DRAM)34内。这种利用地址学习表来限制与调制解调器12的以太网端口58相连的电脑的数目的方法在图5所示的步骤100至112中得到了说明。
在对利用地址学习表来限制与以太网端口58相连的电脑的数目的方法进行说明之前,先参考图8对电缆调制解调器12中的分组数据格式的结构进行说明。图8中示出了分组数据格式结构,分组数据格式由目的地地址(DEST)、源地址(SRC)、类型和长度信息(Type/Len)、网际协议数据(IP Data)以及循环冗余校验(CRC)信息组成。
现在参考图5,如果含有图8所示格式的分组被从以太网端口58接收入调制解调器12(图5中的步骤100),则调制解调器12的中央处理器(CPU)30前进至图5中的步骤102,并且对分组的源地址(SRC)进行搜索,以检查源地址(SRC)是否被登记到存储在动态随机存储器(DRAM)34之内的地址学习表中。
之后,中央处理器(CPU)30判断是否在图5中的步骤104登记了源地址(SRC)。如果判断结果为接收到的分组的源地址(SRC)已经被登记到地址学习表中,则CPU30直接前进至图5中的步骤114。相反,如果判断结果为接收到的分组的源地址(SRC)尚未在步骤104上被登记到地址学习表中,则调制解调器12的CPU30前进至图5中的步骤106。
在图5所示的步骤106上,中央处理器(CPU)30参考用于对在源地址中记录的个人电脑的数目进行计数的地址学习表的当前计数值以搜索是否可能进行源地址记录。如果地址学习表的当前计数值尚未超过预定的个人电脑数目最大值,则CPU30的判断结果为:可以进行源地址登记,如果地址学习表的当前计数值已经超过预定的个人电脑数目最大值,则CPU30的判断结果为:不能进行源地址登记。
在图5中的步骤108上,中央处理器(CPU)30按照与上述内容相同的方式判断是否能够进行源地址的登记,如果可以,则CPU30前进至图5中的步骤112,并且将接收到的分组的源地址登记到地址学习表中。
在步骤112,中央处理器(CPU)还将地址学习表的计数值加“1”。相反,如果在图5所示步骤108上的判断结果为:不能进行源地址登记,则调制解调器12的CPU30将在图5中的步骤110上丢弃接收到的分组。
在本发明的实施例中,与以太网端口58连接的个人电脑的数目按照上述方式受到限制。对于已被记录或者待被记录入地址学习表中的分组来说,它通过射频(RF)有线端口56或通用串行总线(USB)端口60被传输至电缆调制解调器12的外部,从而使数据服务变为可能。
在下表1中以举例说明的方式说明了在地址学习表最多可连接4个个人电脑时所执行的数据服务。在表1中,“0”被示出了5次以代表“可能”项,其中第一项(对应于表1中的No.1)用于写入电缆调制解调器12的地址。[表1] No. 可能 MAC地址 1 0 0x0000F0302504 2 0 0x00D0B709525B 3 0 0x0000F0302505 4 0 5 0 6 X 7 X 8 X 9 X 10 X 11 X 12 X 13 X 14 X 15 X 16 X
当执行完图5中的步骤112之后,在图5中的步骤114上,中央处理器(CPU)将对通过以太网端口58接收到的分组的目的地地址(DEST)进行检查。之后,在图5中的步骤116上,CPU将判断所接收到的分组是否为一个广播分组。例如,如果接收到的分组的目的地地址(DEST)为“0xff ffff ffff”,则意味着所接收到的分组是广播分组。如果接收到的分组是广播分组,则CPU30前进至步骤118,并且将该分组分别传输给通用串行总线(USB)部分48、射频(RF)部分36以及上一层62(图7所示电缆调制解调器12的内部)。
如果在图5所示步骤116上的判断结果为:接收到的分组不是广播分组,则中央处理器(CPU)前进至图5中的步骤120,并且判断接收到的分组的目的地地址(DEST)是否为电缆调制解调器自身的地址。如果判断结果为:该目的地地址是电缆调制解调器12的地址,则CPU30将把该分组传输给位于图7所示电缆调制解调器12内部的上一层62。
与此同时,如果图5所示步骤120上的判断结果为:该目的地地址不是电缆调制解调器12自身的地址,则中央处理器(CPU)前进至图5中的步骤124,并且判断接收到的分组的目的地地址(DEST)是否为与通用串行总线(USB)端口60相连的用户个人电脑的地址。如果步骤124上的判断结果为:该目的地地址(DEST)不是与通用串行总线(USB)端口60相连的用户个人电脑的地址,则CPU30将把接收到的分组识别为待向射频(RF)部分36传输的分组,并且前进至图5中的步骤126以将该分组传输给RF部分36。如果步骤124上的判断结果为:所接收到的分组的目的地地址(DEST)是与通用串行总线(USB)端口60相连的用户个人电脑的地址,则CPU30将把该分组传输给USB部分48。
通过执行如图5所示的方法,中央处理单元(CPU)就能够将通过以太网端口58接收到的分组传输给通用串行总线(USB)端口60,由此就可以在与以太网端口58相连的多个用户个人电脑82-1至82-N之中的一个和与USB端口60相连的用户个人电脑80之间进行数据通信,而且无需额外增加集线器和局域网(LAN)卡。这样,笔记本电脑80就能够与电脑82-2进行通信,而且笔记本电脑80无需拥有局域网(LAN)卡。另外,也没有对集线器70进行修改的必要。也就是说,笔记本电脑80不需要与集线器70或任何其它的集线器相连或者被增加到其中。USB端口60通过USB电缆与笔记本电脑80的一个USB接头相连接。
图6示出了当接收到来自通用串行总线(USB)端口60的含有图8所示格式的分组时,调制解调器12的中央处理器(CPU)30的分组交换操作。
如果含有图8所示格式的分组被从通用串行总线(USB)端口60接收进调制解调器12的中央处理器(CPU)(图6中的步骤200),CPU30将前进至图6中的步骤202,并且检查通过USB端口60接收到的分组的目的地地址(DEST)。之后,在图6中的步骤204上,CPU30对所接收到的分组是否为广播分组进行判断。例如,如果接收到的分组的目的地地址(DEST)为“0xff ffff ffff”,则意味着所接收到的分组是广播分组。如果接收到的分组是广播分组,则CPU30前进至步骤206,并且将该分组分别传输给通用串行总线(USB)部分48、射频(RF)部分36以及位于电缆调制解调器12内部的上一层62。
如果在图6所示步骤204判断出接收到的分组不是广播分组,则中央处理器(CPU)30前进至图6中的步骤208,并且判断接收到的分组的目的地地址(DEST)是否为电缆调制解调器自身的地址。如果判断结果为:该目的地地址是电缆调制解调器12的地址,则CPU30将把该分组传输给位于图7所示电缆调制解调器12内部的上一层62。
与此同时,如果图6所示步骤208上的判断结果为:该目的地地址不是电缆调制解调器12自身的地址,则中央处理单元(CPU)30前进至步骤212,并且搜索保存在动态随机存储器(DRAM)34之中的地址学习表。之后,在图6中的步骤214上,CPU30判断是否存在有与接收到的分组的目的地地址相同的源地址。如果判断出存在有与接收到的分组的目的地地址相同的源地址,则CPU30将把该分组传输给以太网部分42。如果判断出不存在与接收到的分组的目的地地址相同的源地址,则CPU30将把该接收到的分组识别为待传输给射频(RF)部分36的分组,并且前进至图6中的步骤218以将分组传输给RF部分36。
通过执行如图6所示的方法,中央处理器(CPU)30就能够将通过USB端口60接收到的分组传输给以太网端口58,由此就可以在与以太网端口58相连的多个用户个人电脑82-1至82-n之中的一个和与USB端口60相连的用户个人电脑80之间进行数据通信,而且无需额外增加集线器和局域网(LAN)卡。中央处理单元(CPU)30也被称为是调制解调器12的控制部分。
图7示出了电缆调制解调器12中的分组数据流。通过中央处理单元(CPU)30确定分组路径。图7中,cmacSend()和cmacReceive()、endSend()和endReceive()、以及usbSend()和usbReceive()是用于对分组进行处理的函数。当分组被输入到各个部分36、42和48或从者从这些部分输出时,这些函数将被CPU30调用。利用cmacReceive()函数接收加载至射频(RF)部分36上的分组,并且CPU30获得分组的目的地地址(DEST)。如果目的地地址(DEST)是与通用串行总线(USB)有关的地址,则CPU30将调用通用串行总线(USB)部分48的usbSend()函数,并且使分组向与USB端口60相连的用户个人电脑80传送。以太网部分42按照与对上述加载至射频(RF)部分36的分组所进行的处理相同的方式操作。如果加载至RF部分36、以太网部分42或者USB部分48的分组的目的地地址(DEST)对应于电缆调制解调器12自身,则分组将被向上发送至上一层62,以使分组通过上一层62得到处理。
根据本发明的原理,通过简单地将一个通用串行总线(USB)集线器与USB端口60相连,就可以允许一个以上的电脑通过USB端口60对调制解调器12进行访问。例如,可以将一个四端口的USB集线器与调制解调器12的USB端口60连接起来,并且将四台笔记本电脑同时与该USB集线器相连(分别通过它们各自的USB接头)。当调制解调器12所接收到的分组含有与上述和通用串行总线(USB)集线器相连的四个笔记本电脑之一相符的目的地地址时,则该分组将被指引向USB端口60、USB集线器、最后到达与USB集线器相连的正确笔记本电脑中。从这个例子中可以看出,图5中的步骤124和步骤128应该作为用来将分组指引向正确的笔记本电脑的多个步骤中的一部分。
如上所述,根据本发明,由于在电缆调制解调器的以太网端口与电缆调制解调器的通用串行总线(USB)端口之间加入了分组交换功能,因而可以在不需要其它设备(即,无需额外的集线器和额外的局域网卡)的情况下,在与电缆调制解调器(即,网络连接设备)相连的两个或多个用户个人电脑之间进行数据通信。
在本发明的实施例中,电缆调制解调器被作为能够同时支持以太网端口和通用串行总线(USB)端口的调制解调器的一个例子,但是,本发明也可被应用到能够同时支持以太网端口和通用串行总线(USB)端口的任何其它网络连接设备当中,如电缆调制解调器、ADSL调制解调器、以及其它网络设备。
虽然对本发明所作的说明是根据其实施例进行的,并且这些实施例也得到了相当详细的说明,但是,本申请人的意图并不是将所附权利要求的范围限制或者以任何方式限制成如此详细。对所属领域的技术人员来说,其它的优点和修改都是很容易想到的。所以,从较宽的方面来讲,本发明不只限于这些特定的细节、代表性的装置和方法、以及得到图示和说明的示范性例子。因此,从这些细节中得出的变更不会脱离本申请人的一般创造性概念的精神和范围。