用以减少集中的第二层网络的无线网络包的方法和系统的制作方法

文档序号:7994161阅读:333来源:国知局
用以减少集中的第二层网络的无线网络包的方法和系统的制作方法
【专利摘要】一种操作通信系统的方法,包括以下步骤:从第一网络接口中接收第一OSI第二层包;确定所述第一OSI第二层包的传输类型;根据所述第一OSI第二层包的所述传输类型、起源和目的地确定是否发送第二OSI第二层包;当确定发送所述第二OSI第二层包时,确定所述第二OSI第二层包的目标地址和传输类型;并且当确定发送所述第二OSI第二层包时,通过第二网络接口发送所述第二OSI第二层包;其中当所述第一OSI第二层包被封装在至少一个第三层包中时,所述第二OSI第二层包未被封装在任何OSI第三层包中;并且其中当所述第一OSI第二层包未被封装在任何开放系统互连(OSI)第三层包中时,所述第二OSI第二层包被封装在至少一个OSI第三层包中。
【专利说明】用以减少集中的第二层网络的无线网络包的方法和系统
[0001]发明概沭
[0002]能够建立和终止至少一个第二层隧道(例如,通过使用第二层隧道协议(L2TP)建立的VPN)的通信系统通过将第一个第二层包从广播或组播转换成单播第二层包而减少广播或组播包并且将单播第二层包转换成广播或组播包。所述通信系统根据传输类型、第一个第二层包的起源或第一个第二层包的目的地确定是否进行所述转换。根据本发明各实施例中的一者,通信系统可以确定不发送广播或组播第二层包。
[0003]根据本发明各实施例中的一者,通信系统通过在预定端口号处交换用户数据协议(UDP)包而了解单播第二层包的目标地址。通信系统拦截到达特定UDP端口处的任何UDP包并且检查这些UDP包的有效负载。如果有效负载匹配预定格式或内容,则通信系统能够将UDP包的发送器的第二层和第三层地址识别为用于第二层单播目标地址的地址。

【背景技术】
[0004]使主机能够经由光缆、铜缆或无线电链路通信的无线网络通信系统的使用已广泛普及。主机被嵌入到无线通信电子设备中,以与其他主机通信,并且还经由接入点连接到核心网络上,例如,局域网(LAN)以及因特网。接入点转送主机与核心网络之间以及主机之间的网络包。
[0005]主机和基站使用开放系统互连(OSI)第二层技术(例如,以太网)与核心网络通信,并且在处理广播和组播网络包时彼此效率较低。互联网协议(IP)网络上的一种类型的广播网络包属于地址解析协议(ARP)协议网络包。对于组播网络包,互联网组管理协议(IGMP)是由主机和相邻路由器使用以建立组播组成员的多个通信协议中的一者。
[0006]由于历史技术的发展,属于相同第二层网络的主机通常是靠近的并且分享相同的通信信道或彼此通信的成本较低。因此,第二层网络中的广播和组播包尚未成为重要的关注问题。当第二层网络通过第三层网络形成时,随着包的数量增加,第二层网络中的广播和组播包会成为关注的问题。ARP代理、代理服务器、LAN分段、高速缓存是减少第二层广播和组播包的常用方法。
[0007]当第二层包通过例如第二层隧道协议(L2TP)和虚拟专用网络(VPN)封装在第三层包中时,广播和组播包的数量会对第三层网络性能产生严重的负面影响。此外,当无线电频谱用于传输第三层包时,可能不具有转变广播和组播包的足够能力。
[0008]现有技术ARP代理、代理服务器、LAN分段、高速缓存以及其他广播和多播包减少技术不允许选择性地传输广播和多播包,且尤其是源自移动网络装置的广播和多播包通过第三层网络的传输。
[0009]美国专利7,356,032揭示了一种用于通过使用高速缓冲存储器来将以太网/IP地址对存储在每个基站中而减少移动单元之间的广播包的系统和方法。然而,如果移动单元使用OSI第二层协议通过第三层网络连接到核心网络上,则美国专利7,356,032无法减少广播包。此外,美国专利7,356,032依靠无线接入点来管理ARP包。这也会增加无线接入点的设计的复杂性。
[0010]图1图示了网络环境,其中通信系统和主机,例如,客户端计算机111、112、113和114直接联接到广域网(WAN)或互联网。在此特定的网络环境中,所属领域的技术人员将理解,当客户端计算机111通过以下步骤将OSI第三层包发送到互联网:第一,客户端计算机111通过无线电链路121将OSI第三层包发送到无线接入点(AP) 101 (计算机第二层包),其中第二层包封装来自计算机111的第三层包(计算机第三层包);第二,APlOl通过互连网络(例如,互联网103)通过使用第三层包(AP第三层包)与隧道终止网关104通信,以封装计算机第二层包;第三,隧道终止网关104去封装AP第三层包,以重新得到计算机第二层包并且通过专用网络105将计算机第二层包发送到互联网网关106 ;最后,互联网网关106去封装计算机第二层包,以重新得到计算机第三层包并且将计算机第三层包发送到互联网103。
[0011]当存在来自互联网103的客户端计算机111的OSI第三层包时:第一,互联网网关106从互联网103接收第三层包(互联网包)并且通过将互联网包封装在第二层包(网关第二层包)中而将互联网包发送到隧道终止网关104 ;第二,隧道终止网关104将网关第二层包封装在第三层包中(隧道第三层包)并且通过互联网103将隧道第三层包发送到APlOl ;第三,APlOl去封装隧道第三层包,以重新得到网关第二层包并且通过无线电链路121将网关第二层包发送到客户端计算机111 ;最后,客户端计算机111通过从网关第二层包中去封装互联网包而重新得到互联网包。
[0012]APlOl和隧道终止网关104通过使用第三层包通过第二层隧道连接。第二层隧道可以通过使用L2TP或其他隧道协议来实施。本发明的普通技术人员将理解如何使用第三层包在两个通信系统之间建立第二层隧道的多种其他组合和排列。
[0013]通过客户端计算机112与互联网103通信的步骤类似于通过客户端计算机111与互联网103通信的步骤。相同的步骤应用于计算装置113和114,然而替代APlOl而使用AP102。与互联网103通信的步骤同样如何通过无线接入点、隧道终止网关104、专用网络105和互联网网关106应用于主机、客户端计算机、计算装置和通信系统对所属领域的技术人员而言是明了的。
[0014]可以注意到,服务器115和客户端计算机111、112、113和114都属于相同的第二层网络,因为它们通过APlOl与隧道终止网关104之间以及AP102与隧道终止网关104之间的第三层网络连接。因此,当服务器115发送第二层广播或组播包时,广播或组播包随后由隧道终止网关104、APlOl和AP102复制,并且被发送到客户端计算机111、112、113和114。这种类型的广播或组播网络包可以容易地消耗APlOl与互联网103之间、AP102与互联网103之间、隧道终止网关104与互联网103之间的网络资源、APlOl的无线电频谱以及AP102的无线电频谱的重要部分。本发明旨在减少刚刚描述的网络环境中的广播和组播网络包。

【具体实施方式】
[0015]随后的说明仅提供优选的示例性实施例,并且并不意图限制本发明的范围、适用性或配置。相反,优选的示例性实施例的随后说明将为所属领域的技术人员提供用于实施本发明的优选示例性实施例的授权说明。应了解,在不脱离所附权利要求书所阐释的本发明的精神和范围的前提下,可以在元件的功能和布置上对本发明作各种变化。
[0016]在以下描述中,给出具体的细节以提供对各实施例的彻底了解。然而,所属领域的技术人员将了解,可以在没有这些特定细节的情况下实践各实施例。例如,电路可以以框图示出,以便不以不必要的细节混淆实施例。在其他情况下,已经示出了众所周知的电路、过程、算法、结构和技术而没有提供不必要的细节,从而避免混淆实施例。
[0017]还应注意,各实例可以被描述为一个过程,所述过程被描绘为流程图、流程图表、数据流程图表、结构图,或框图。虽然流程图可以将操作描述为顺序过程,但是许多操作可以并行地或同时地执行。另外,操作顺序可以被重新布置。当完成其操作时过程被终止,但是所述过程可以具有不包括在图中的额外步骤。过程可以指代方法、函数、步骤、子例程、子程序等。当过程对应于函数时,其终止对应于所述函数到调用函数或主函数的返回。
[0018]此外,如本文中所揭示,术语“计算机存储媒体”可以表示用于存储数据的一个或多个装置,包括只读存储器(ROM)、随机存取存储器(RAM)、磁性RAM、核心存储器、磁盘存储媒体、光学存储媒体、闪存装置和/或用于存储信息的其他机器可读媒体。术语“机器可读媒体”包括但不限于,便携式的或固定的存储装置、光学存储装置、无线信道以及能够存储、含有或传送指令和/或数据的各种其他媒体。
[0019]此外,实施例可以由硬件、软件、固件、中间软件、微代码、硬件描述语言,或其任意组合来实施。当在软件、固件、中间软件或微代码中实施时,将要执行必要任务的程序代码或代码区段可以储存在机器可读媒体中,例如,计算机存储媒体。处理单元可以执行必要的任务。代码区段可以表示过程、函数、子例程、程序、例程、子例程、模块、软件包、类别或指令、数据结构或程序语句的任意组合。代码区段可以通过传递和/或接收信息、数据、论据、参数或存储器内容而耦合到另一代码区段或硬件电路上。信息、论据、参数、数据等可以经由任何合适的构件进行传递、转发或传输,所述构件包括存储器共享、消息传递、记号传递、网络传输等。
[0020]可以由通信系统(CS)提供的网络接口,例如,LAN接口和WAN接口是以太网接口、帧中继接口、天线接口、光纤接口、电缆接口、DSL接口、令牌环接口、串行总线接口、通用串行总线(USB)接口、防火墙接口、外部组件互连(PCI)接口等。在一个变体中,网络接口处于处理单元中,并且因此用于与光纤、电缆或天线连接的介质可以直接与处理单元连接。在一个变体中,网络接口可以连接到用于W1-Fi网络连接的W1-Fi适配器上。在一个变体中,网络接口可以连接到USB端口上并且所述USB端口可以连接到用于无线WAN连接的外部调制解调器上,例如,USB3G调制解调器、USB LTE调制解调器、USB WiMAX调制解调器、USBW1-Fi调制解调器,或用于无线通信的其他调制解调器。本发明的普通技术人员将理解前述内容的多种其他组合和排列。
[0021]为了提高可读性,开放系统互连(OSI)第二层在本发明中与第二层是可互换的,并且类似地OSI第三层与第二层是可互换的。
[0022]在本发明中与接入点可互换的基站是无线电接收器/发射器,所述无线电接收器/发射器用作本地无线网络的网络集线器,并且还可以是有线网络与无线网络之间的网关。所述基站可以由发射器和无线路由器组成。
[0023]主机是连接到计算机网络上的电子装置,例如,移动电话、计算机、服务器、路由器、转换器、传感器等等。主机可以向用户或网络上的其他节点提供信息资源、服务以及应用程序。主机是分配有网络层主机地址的网络节点。主机可以具有被分配到它们的网络接口上的一个或多个互联网协议(IP)地址。这些地址由管理者在启动时自动地借助于动态主机配置协议(DHCP)或由无状态地址自动配置方法手动地进行配置。
[0024]预定的第二层广播目标地址是由CS称作广播地址的地址,包括十六进制的以太网广播地址FF: FF: FF: FF: FF: FF、由用于专有广播的CS制造商使用的地址,以及由用于专有广播的CS制造商的管理者配置的地址。组播目标地址是由CS称作组播地址的地址,包括由CS通过IGMP 了解的组播地址。
[0025]CS是能够建立和终止至少一个第二层隧道的主机,例如,通过使用L2TP、接收第二层包以及发送第二层包建立的VPN。由于CS必须能够建立和终止至少一个第二层隧道,因此CS必须能够接收和发送第三层包。CS可以通过无线和/或有线网络传送到其他主机。CS可以是能够处理IEEE802.11协议的802.11接入点。CS可以是互联网协议(IP)路由器。CS可以是具有以太网转换功能的IP路由器。CS可以是通过使用一个或多个OSI第二层协议能够与其他主机通信的主机,例如,以太网、高速分组接入(HSPA)、HSPA+、长期演进(LTE)、WiMax、GPRS、EDGE、GSM、CDMA、WiF1、CDMA2000、WCDMA、TD-SCDMA、BLUET00TH 以及WiBRO0
[0026]图2是图示了根据本发明一实施例中的通信系统减少广播和组播包的方法的流程图。当通信系统(CS)在步骤200通过网络连接接收第二层包(接收到的L2包)(这可以通过不同网络连接技术实施,包括无线、有线和光学纤维)时,在步骤201CS确定接收到的L2包的传输类型是广播的、组播的还是单播的。根据本发明各实施例中的一者,CS通过检查接收到的L2包的目标地址来确定传输类型。在以太网网络中,介质访问控制地址(MAC地址),即,组播和广播地址是十六进制FF: FF: FF: FF: FF: FF。由于接收到的L2包可以被封装在一个或多个第三层包(接收到的L3包)中,因此CS可能需要在步骤201去封装接收到的L3包,以重新得到接收到的L2包。通过使用IP来彼此通信的主机可以使用IGMP,以确定组播地址。
[0027]在步骤202CS确定是否发送另一第二层包(CSL2包)。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是单播的,则CS发送CSL2包。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是广播的或组播的,则CS不发送CSL2包。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是单播的且接收到的L2包的目标地址是预先确定的地址,则CS发送广播或组播CSL2包。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是单播的且接收到的L3包在预定端口处接收,则CS发送广播CSL2包。根据本发明各实施例中的一者,是否发送CSL2包的决定是基于一个或多个预定规则(简称预定规则)确定的。
[0028]CSL2包是基于接收到的L2包确定的。由CSL2包传送的内容来自由接收到的L2包传送的内容。
[0029]CSL2包的目标地址在步骤204确定。根据本发明各实施例中的一者,当CSL2包的传输类型是广播的时,目标地址是广播地址,例如以太网中使用的FF: FF: FF: FF: FF: FF。当CSL2包的传输类型是单播的时,目标地址是CSL2包的接收器的第二层地址,例如,以太网协议中的CSL2包的接收器的介质访问控制(MAC)地址。根据本发明各实施例中的一者,根据预定规则确定目标地址。
[0030]预定规则的组合的数目可以是无数的。网络管理者和/或通信系统制造商可以根据它们的需要和网络环境配置预定规则。
[0031]预定规则可以由CS管理者手动地输入到CS、本地地或远程地从服务器中重新得到或由CS的制造商预先确定。预定规则被存储在可以在CS或另一装置中实施的机器可读媒体中。
[0032]情形
[0033]实施方案考虑至少以下八种情形。前四种情形与实施本发明的CS相关联,本发明为连接到专用网络105和互联网103上的隧道终止网关104。隧道终止网关104可以通过使用路由器、服务器、交换机或能够终止第二层隧道的任何通信系统来实施。隧道终止网关104决定是否发送CSL2包,并且确定根据以下四种情形的目标地址且可以以预定规则实施。
[0034]后四种情形与实施例本发明的CS相关联,本发明为AP,例如APlOl和AP102且连接到主机上,例如,计算装置111、112、113和114以及互联网103。APlOl和AP102也可以通过使用路由器、服务器、交换机或能够无线地通信并且终止第二层隧道的任何通信系统来实施。APlOl或AP102决定是否发送CSL2包,并且确定根据接下来四种情形的目标地址且可以根据一组预定规则实施。
[0035]第一情形是接收到的L2包由隧道终止网关104通过具有预定的第二层广播目标地址或组播目标地址的互联网103接收。根据本发明各实施例中的一者,由于接收到的L2包的目标地址是预定的广播或组播目标地址;因此隧道终止网关104确定接收到的L2包是否意图用于广播或组播到专用网络105。因此,隧道终止网关104决定在步骤202,CSL2包将利用广播传输类型或组播传输类型发送到专用网络,并且在步骤204,目标地址为广播或组播第二层地址。接收到的L2包的预定的第二层广播目标或组播地址可以是任何第二层地址,例如,以太网的FF:FF:FF:FF:FF:FF,只要隧道终止网关104能够识别出具体第二层地址的使用是出于广播或组播目的。当接收到的L2包源自计算装置111-114中的一者时,接收到的L2包与先前提及的计算机第二层包相同。
[0036]图3A图示了当接收到的L2包301通过AP发送且通过隧道终止网关104接收时,通过隧道终止网关104接收和发送的2级和3级包之间的关系。此处,接收到的L2包301是计算机第二层包,所述计算机第二层包封装计算机第三层包且被封装在AP第三层包303中。计算机第三层包是由计算装置,即,计算装置111-114中的一者发送的第三层包。隧道终止网关104去封装AP第三层包303,以重新得到计算机第二层包,所述计算机第二层包现在变成CSL2包,因为隧道终止网关104将CSL2包302发送到专用网络104。计算机第三层包保持封装在CSL2包中。
[0037]根据本发明各实施例中的一者,当预定的第二层广播或组播目标地址是隧道终止网关104的第二层地址时,隧道终止网关104检查计算机第三层包的端口数,所述计算机第三层包被封装在接收到的L2包中,以确定接收到的L2包是用于广播目的还是组播目的。
[0038]第二情形是接收到的L2包由隧道终止网关104通过具有非预定的第二层广播或组播目标地址的互联网103接收。根据本发明各实施例中的一者,由于接收到的L2包的目标地址不是预定的广播或组播目标地址,因此隧道终止网关104可以确定接收到的L2包是否意图用于单播到专用网络105中的具体第二层地址。因此,隧道终止网关104决定在步骤202,CSL2包将通过专用网络利用单播传输类型发送到装置,例如,网关106和服务器115,并且在步骤204,目标地址是单播第二层地址。当接收到的L2包源自计算装置111-114中的一者时,接收到的L2包与先前提及的计算机第二层包相同。
[0039]应注意,当隧道终止网关104通过互联网103接收接收到的L2包时,接收到的L2包被封装在AP第三层包中。隧道终止网关104可以去封装AP第三层包,以重新得到接收到的L2包。根据本发明各实施例中的一者,去封装过程由终止建立有APlOl和AP102的第二层隧道的另一通信系统传导。在此种情况下,接收到的L2包从该通信系统中接收。
[0040]不管CSL2包的传输类型如何,当隧道终止网关104通过专用网络105发送CSL2包时,在步骤205,隧道终止网关104不需要将CSL2包封装在一个或多个第三层包中,因为专用网络105是第二层网络。因此,随后执行步骤206,而不是步骤207。
[0041]第三情形是接收到的L2包由隧道终止网关104通过具有预定的第二层广播或组播目标地址的专用网络105接收。根据本发明各实施例中的一者,由于接收到的L2包的目标地址是预定的广播或组播目标地址,因此隧道终止网关104可以确定接收到的L2包意图用于通过互联网103广播或组播到AP101-102以及计算装置111-114。因此,隧道终止网关104决定在步骤202,不发送CSL2包,以便减少网络包和/或保存无线频谱。操作在步骤203停止。
[0042]图3B图示了当接收到的L2包301通过专用网络104接收时,通过隧道终止网关104接收和发送的2级和3级包之间的关系。由隧道终止网关104接收的接收到的L2包301是网关第二层包,所述网关第二层包封装互联网包。互联网包是由网关106接收的且意图发送到计算装置111-114中的一者上或所有计算装置上的第三层包。CSL2包302被封装在隧道第三层包304中并且与网关第二层包相同。如果传输类型是单播的,则隧道终止网关104将隧道第三层包304发送到AP中的一者上,或者如果传输类型是广播的或组播的,则隧道终止网关104将隧道第三层包304发送到所有AP上。
[0043]第四情形是接收到的L2包通过具有非预定的第二层广播或组播目标的专用网络105接收。根据本发明各实施例中的一者,由于接收到的L2包的目标地址不是预定的第二层广播或组播目标,因此隧道终止网关104确定接收到的L2包意图用于单播到属于通过互联网103可获得的计算装置111-114中的一者的特定第二层地址。因此,隧道终止网关决定在步骤202,CSL2包将通过互联网103利用单播传输类型发送,并且在步骤204,目标地址是计算装置111-114以及AP101-102中的一者的特定第二层地址。在步骤205,CSL2包经确定以被封装在一个或多个第三层包中,并且在步骤207,与隧道第三层包相同的一个或多个第三层包被发送。
[0044]应注意,当从网关104中接收接收到的L2包时,接收到的L2包可以已被封装在互联网包中。在此种情况下,接收到的L2包与网关第二层包相同并且隧道第三层包封装CSL2包。
[0045]第五情形是接收到的L2包由APlOl从具有预定的第二层广播或组播目标地址的直接连接的主机中接收,例如,计算装置113。根据本发明各实施例中的一者,由于接收到的L2包的目标地址是预定的广播或组播目标地址,因此APlOl能够分别确定接收到的L2包意图用于广播或组播。因此,在步骤202决定CSL2包利用广播或组播传输类型被发送到隧道终止网关104,并且在步骤204,目标地址可以是隧道终止网关104的广播第二层地址或第二层地址。由于隧道终止网关104仅通过互联网103是可获得的,因此AP102必须通过互联网103发送CSL2包。在步骤205和步骤207,AP102通过使用隧道终止网关104的第三层地址经由互联网103将CSL2包封装在为AP第三层包的一个或多个第三层包中且将CSL2包发送到隧道终止网关104。
[0046]图3C图示了当接收到的L2包301从计算装置111-114中的一者接收时,通过AP接收和发送的2级和3级包之间的关系。由AP接收的接收到的L2包301是计算机第三层包。AP从接收到的L2包301中重新得到计算机第三层包,并且将计算机第三层包封装在CSL2包302中,所述CSL2包被封装在AP第三层包303中。随后,AP将AP第三层包303发送到隧道终止网关104。
[0047]AP第三层包的端口数可以被设置到预定的端口数,以通知隧道终止网关104:AP第三层包封装意图用于广播的CSL2包。取决于APlOl的制造商和/或管理者的偏好,APlOl可以或不可以将接收到的L2包广播到直接连接的其他主机。如果APlOl未将CSL2包广播到直接连接的其他主机,则可以减少网络包。如果在步骤205,APlOl决定将CSL2包广播到直接连接的其他主机,则在步骤207,CSL2包随后被发送到主机。
[0048]第六情形是接收到的L2包由APlOl从具有非预定的第二层广播或组播目标地址的直接连接的主机中接收,例如,计算装置111。根据本发明各实施例中的一者,由于接收到的L2包的目标地址不是预定的广播目标地址,因此APlOl可以确定接收到的L2包意图用于单播到特定第二层地址,所述第二层地址可以属于直接连接到APlOl上的另一装置,例如计算装置112或通过互联网103可获得的相同第二层网络中的另一装置。因此,APlOl决定在步骤202,CSL2包将被发送且还决定在步骤204,传输类型是单播的。CSL2包的第二层目标地址是接收到的L2包的目标地址。如果APlOl可以在不穿过互联网103(例如,计算装置112)的情况下发送CSL2包的目标地址,则APlOl可以将CSL2包发送到具有第三层封装的计算装置112。如果APlOl必须通过互联网103发送CSL2包,则在步骤205和步骤207,APlOl通过使用隧道终止网关104的第三层地址经由互联网103将CSL2包封装在为AP第三层包的一个或多个第三层包中且将CSL2包发送到隧道终止网关104。
[0049]第七情形是接收到的L2包由APlOl通过具有预定的第二层广播目标地址的互联网103接收。出于说明的目的使用图1,当接收到的L2包的目标地址是预定的广播目标地址时,接收到的L2包意图用于广播到计算装置111和112。取决于APlOl的制造商和/或管理者的偏好,在步骤202,APlOl可以或不可以将接收到的L2包广播到其他计算装置111和112。如果APlOl未将CSL2包广播到直接连接的主机,则可以减少网络包并且在步骤203过程停止。如果在步骤202,APlOl决定将CSL2包广播到直接连接的其他主机,则在步骤204,CSL2包的目标地址是预定的第二层广播目标,例如,以太网中的MAC地址FF:FF:FF:FF:FF:FF。由于计算装置111和112处于相同的第二层网络中,因此在步骤205不存在第三层封装且在步骤206发送CSL2包。
[0050]图3D图示了当接收到的L2包301通过隧道终止网关104发送且通过APlOl或102中的一者接收时,通过AP接收和发送的2级和3级包之间的关系。此处,接收到的L2包301是网关第二层包,所述网关第二层包封装互联网包并且被封装在隧道第三层包304中。AP去封装隧道第三层包304,以重新得到网关第二层包。出于说明的目的使用图1,如果传输类型是单播的,则AP将作为网关第二层包的CSL2包302发送到计算装置111-114中的一者,或者如果传输类型是广播的,则AP将所述CSL2包发送到所有计算装置111-114。
[0051]第八情形是接收到的L2包由APlOl通过具有非预定的第二层广播目标地址的互联网103接收。根据本发明各实施例中的一者,由于接收到的L2包的目标地址不是预定的广播目标地址,因此接收到的L2包意图用于单播到直接连接的特定计算装置,例如,计算装置111和112中的一者。因此,APlOl决定在步骤202,CSL2包将被发送且还决定在步骤204,传输类型是单播的。CSL2包的第二层目标地址是接收到的L2包的目标地址。在步骤205不具有第三层封装的情况下,在步骤206,APlOl将CSL2包发送到计算装置111或112。由于接收到的L2包通过互联网103接收,因此所述接收到的L2包被封装在一个或多个第三层包中,所述第三层包是源自隧道终止网关104的隧道第三层包。APlOl必须去封装隧道第三层包,以便重新得到接收到的L2包。
[0052]应注意,包含在接收到的L2包中的有效负载应该与包含在CSL2包中的有效负载相同,但是接收到的L2包的第二层目标地址可以不同于CSL2包的第二层目标地址。这是因为可以是AP或隧道终止网关的CS可以改变第二层目标地址,以便将第二层广播或组播目标地址转换成第二层单播目标地址。
[0053]根据本发明各实施例中的一者,代替依靠接收到的L2包的第二层目标地址或依靠第三层包的端口数,封装接收到的L2包,以确定接收到的L2包是否意图用于广播或组播,CS检验存储在接收到的L2包中的有效负载中的信息,以便作出决定。
[0054]根据本发明各实施例中的一者,接收到的L2包封装IP地址解析协议(ARP)包,所述IP地址解析协议包可以是探测、通知或回复包。如果ARP包是探测或通知包,则接收到的L2包的传输类型是广播的或组播的。随后取决于接收到的L2包的起源,例如,来自专用网络105或来自计算装置111-114中的一者,CS(例如,AP101、AP102)或隧道终止网关104可以确定是广播还是组播对应的CSL2包。如何识别接收到的L2包是否封装IP ARP包和ARP包的类型对所属领域的技术人员是明了的。
[0055]根据本发明各实施例中的一者,当接收到的L2包是ARP回复包时,CS(例如,AP10UAP102)或隧道终止网关104高速缓存ARP回复包的IP地址和MAC地址对。接收到的L2包的传输类型可以是单播的或广播的。当CS接收另一接收到的L2包(所述另一接收到的L2包可以是单播的、广播的或组播的,随后含有ARP探测包)时,CS随后通过发送具有高速缓存的IP地址和MAC地址对的CSL2包而对应于ARP探测包的发送器。因此,CS就像ARP高速缓冲存储器。如何实施ARP高速缓冲存储器对所属领域的技术人员是明了的。计算机存储媒体可以用作用于存储高速缓存的IP地址和MAC地址对的高速缓冲存储器。
[0056]根据本发明各实施例中的一者,接收到的L2包封装IP动态主机配置协议(DHCP)包,所述IP动态主机配置协议包可以是发现、提供、请求、确认、信息或释放包。如果DHCP包是发现或请求包,则包的传输类型是广播的。随后,取决于接收到的L2包的起源,例如,来自专用网络105或来自计算装置111-114中的一者,CS(例如,隧道终止网关104、AP101或AP102)随后确定是广播还是组播对应的CSL2包。如何识别接收到的L2包是否封装IPDHCP包和DHCP包的类型对所属领域的技术人员是明了的。
[0057]根据本发明各实施例中的一者,当接收到的L2包的传输类型是广播的或组播的并且CSL2包的传输类型是单播的时,在以太网情况下第二层目标地址从广播地址FF:FF:FF:FF:FF:FF或组播地址变化到第二层单播地址。然而,如果CS是AP,例如,AP101-102中的一者,则AP需要了解第二层目标地址,所述第二层目标地址是隧道终止网关104的第二层地址。隧道终止网关104的第二层地址可以由网络管理者输入、通过询问地址进行预先配置的另一通信系统或通过在发送预定的第三层包之后从响应中学习而接收。如果使用预定的第三层包,则AP随后可以从预定的第三层包的回复中了解目标地址。
[0058]根据本发明各实施例中的一者,当接收到的L2包的传输类型是广播的或组播的时,在隧道终止网关104与AP之间变化的第三层包用于确定CSL2包的目标地址。AP和隧道终止网关104都接受相同的特定用户数据协议(UDP)端口。AP首先将UDP包发送到隧道终止网关104的特定UDP端口,所述隧道终止网关的IP地址由AP从DHCP包或预先确定的配置中了解到。隧道终止网关104拦截到达特定UDP端口处的任何UDP包并且检查这些UDP包的有效负载。如果有效负载匹配预定格式或内容,则隧道终止网关104随后能够识别AP的第二层地址,并且可以将第二 UDP包发送到AP的同一特定UDP端口,用于确认。当AP接收第二 UDP包时,AP还验证第二 UDP包的有效负载是否匹配预定格式或内容,并且如果匹配,则AP存储第二 UDP包的第二层源地址,例如,第二 UDP包的MAC地址。从那以后,直到网络条件的进一步重新安排或变化,否则当接收到的L2包的传输类型是广播的或组播的时,AP将CSL2包的目标地址设置成第二 UDP包的第二层源地址。
[0059]根据本发明各实施例中的一者,通信系统(例如,APlOU AP102)以及隧道终止网关104可以由两个通信系统组成。第一通信系统负责通过使用第三层通信技术,例如,L2TP网络服务器建立第二层隧道。第二通信系统负责确定是否发送CSL2包、CSL2包的传输类型以及CSL2包的目标地址。
[0060]通信系统
[0061]图4图示了根据所述本发明的通信系统的本发明各实施例中的一者。通信系统401包括处理器单元402、数据存储器405、至少一个LAN接口 402以及至少一个WAN接口403,用于与其他网络设备一起使用,例如,WiMAX路由器、以太网交换机、IP路由器以及其他分组网络装置、网络管理和供给系统、本地PC等。处理器单元402分别耦合到数据存储器405、LAN接口 402以及WAN接口 403上。可以用于网络装置401中的其他组件包括放大器、板级电子组件以及媒体处理器和其他专业化SoC或ASIC装置。也可以按要求提供用于多种处理层和协议(例如,802.3,DOCSIS MAC、DHCP、SNMP、H.323/RTP/RTCP、VoIP、SIP 等)的支持。
[0062]通信系统401可以采用任何数目的物理形式,例如包括较大网络边缘内的多个离散模块或卡中的一者或所属领域中已知类型的网络集线器装置,并且还可以包括单独的固件或与其他硬件/软件组件组合的固件。或者,通信系统401可以是独立的装置或设置在其他计算装置或网络装置处的模块,并且甚至可以包括其自身的RF前端(例如,调制器、力口密器等)或光接口,以便直接与计算装置和网络装置接合。可以使用多种其他配置。通信系统401还可以与其他类型的组件(例如,移动基站、卫星收发器、视频机顶盒、编码器/解码器等)整合并且如果有需要形成要素。
[0063]处理单元404可以通过使用一个或多个中央处理单元、网络处理器、微处理器、微控制器、FPGA、ASIC或能够执行指令的任何装置来实施,以执行系统的基本算术、逻辑和输A /输出操作。
[0064]计算机存储媒体405可以通过使用DRAM、SDRAM、闪存RAM、光学存储器、磁性存储器、硬盘和/或能够提供存储能力的任何计算机可读媒体中的至少一者来实施。计算机存储媒体405可以用于向处理单元402提供指令并且提供数据存储器,以存储高速缓冲存储器、标识符、条件、阈值、网络性能数据、网页、消息和其他数据,以便于通信系统401的操作。
[0065]当通信系统401通过在LAN接口 402或WAN接口 403中的网络连接接收接收到的L2包时,处理单元404确定接收到的L2包的传输类型是广播的、组播的还是单播的。网络连接可以通过不同网络连接技术(包括无线、有线以及光学纤维)来实施。根据本发明各实施例中的一者,处理单元404通过检查接收到的L2包的目标地址确定传输类型。由于接收到的L2包可以被封装在一个或多个接收到的L3包中,因此处理单元404可能需要去封装接收到的L3包,以重新得到接收到的L2包。通过使用IP通信的主机可以使用IGMP,以确定组播地址。
[0066]处理单元404确定是否发送CSL2包。如果处理单元404确定发送CSL2包,则在接收到的L2包从LAN接口 402接收的情况下CSL2包通过WAN接口 403发送。另一方面,如果处理单元404确定发送CSL2包,则在接收到的L2包从WAN接口 403接收的情况下CSL2包通过LAN接口 402发送。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是单播的,则处理单元404决定发送CSL2包。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是广播的或组播的,则处理单元404决定不发送CSL2包。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是单播的且接收到的L2包的目标地址是预先确定的地址,则处理单元404决定发送广播或组播CSL2包。根据本发明各实施例中的一者,如果接收到的L2包的传输类型是单播的且接收到的L3包在预定端口处接收,则处理单元404决定发送广播CSL2包。根据本发明各实施例中的一者,是否发送CSL2包的决定是基于一个或多个预定规则确定的。
[0067]计算机存储媒体405可以用于存储由接收到的L2包传送的内容。在一个变体中,在发送对应的CSL2包之后,由存储在计算机存储媒体405中的接收到的L2包传送的内容随后被移除,以便释放数据存储空间。
[0068]CSL2包的目标地址由处理单元404确定。根据本发明各实施例中的一者,处理单元404根据预定规则确定目标地址。预定规则被存储在计算机存储媒体405中。
[0069]参考先前所述的八种情形,通信系统的处理单元404(例如,隧道终止网关104、APlOl和AP102)执行以下功能:确定接收到的L2包是否意图用于广播、组播或单播;确定CSL2包的传输类型、CSL2包的目标地址;建立VPN ;终止VPN ;将第二层包封装在至少一个第三层包中;从至少一个第三层包中去封装第二层包;以及其他处理功能。
[0070]根据本发明各实施例中的一者,通信系统(例如,APlOU AP102)以及隧道终止网关104可以由至少一个第三层路由器和至少一个第二层交换机组成。至少一个第三层路由器负责通过使用第三层通信技术,例如,L2TP网络服务器来建立第二层隧道。至少一个第二层交换机负责确定是否发送CSL2包、CSL2包的传输类型以及CSL2包的目标地址。第三层路由器和第二层交换机中的每一者具有其自身的处理单元、计算机存储媒体、LAN接口、WAN接口,以执行通信系统401的功能。至少一个第三层路由器用于连接到外部网络上,例如,互连网络或互联网。至少一个第三层路由器的LAN接口连接到至少一个第二层交换机的端口中的一者上。至少一个第二层交换机的端口中的另一这连接到专用网络上。如何实施至少一个第三层路由器和至少一个第二层交换机,用于执行通信系统401的功能对所属领域的技术人员是明了的。
[0071]根据本发明各实施例中的一者,通信系统401的至少一个LAN接口是使主机能够通过使用IEEE802.11协议而连接到通信系统上的802.11接口,包括802.1la,802.lib、802.Hg,802.1ln,802.1lac和802.1lad ;至少一个WAN接口是使通信系统401能够经由IEEE802.16协议而连接到网络间或互联网上的802.16接口。在一个变体中,WiMAX调制解调器被嵌在通信系统401内侧,并且因此WAN接口可以直接与天线连接。在一个变体中,IEEE802.11调制解调器被嵌在通信系统401内侧,并且因此LAN接口可以直接与至少一个天线连接。在一个变体中,IEEE802.16调制解调器被嵌在通信系统401内侧,并且因此WAN接口可以直接与至少一个天线连接。
【专利附图】

【附图说明】
[0072]图1图示了网络环境,其中通信系统和主机,例如,客户端计算机111、112、113和114直接传送到广域网(WAN)或互联网。
[0073]图2是图示了根据本发明各实施例中一者的通信系统减少广播和组播包的方法的流程图。
[0074]图3A图示了当接收到的L2包301通过AP发送且通过隧道终止网关104接收时,通过隧道终止网关104接收和发送的2级和3级包之间的关系。
[0075]图3B图示了当接收到的L2包301通过专用网络104接收时,通过隧道终止网关104接收和发送的2级和3级包之间的关系。
[0076]图3C图示了当接收到的L2包301从计算装置111-114中的一者接收时,通过AP接收和发送的2级和3级包之间的关系。
[0077]图3D图示了当接收到的L2包301通过隧道终止网关104发送且通过APlOl或102中的一者接收时,通过AP接收和发送的2级和3级包之间的关系。
[0078]图4图示了根据所述本发明的通信系统的本发明各实施例中的一者。
【权利要求】
1.一种操作通信系统的方法,包括以下步骤:从第一网络接口中接收第一开放系统互连(OSI)第二层包;确定所述第一 OSI第二层包的传输类型;根据所述第一 OSI第二层包的所述传输类型、起源和目的地确定是否发送第二 OSI第二层包,其中所述第二 OSI第二层包的内容是基于所述第一 OSI第二层包的内容确定的;当确定发送所述第二 OSI第二层包时,确定所述第二 OSI第二层包的目标地址和传输类型;并且当确定发送所述第二 OSI第二层包时,通过第二网络接口发送所述第二 OSI第二层包;其中当所述第一 OSI第二层包被封装在至少一个第三层包中时,所述第二 OSI第二层包未被封装在任何OSI第三层包中;并且其中当所述第一 OSI第二层包未被封装在任何开放系统互连(OSI)第三层包中时,所述第二OSI第二层包被封装在至少一个OSI第三层包中。
2.根据权利要求1所述的方法,其中所述第二OSI第二层包的内容从计算机存储媒体中重新得到。
3.根据权利要求1所述的方法,其中第一第二层包封装互联网协议(IP)地址解析协议(ARP)包。
4.根据权利要求3所述的方法,其进一步包括存储包含在所述第一OSI第二层包中的所述IP ARP包,其中所述第一 OSI第二层包的传输类型是单播的并且其中所述第一 OSI第二层包是ARP回复。
5.根据权利要求1所述的方法,其中所述第一第二层包封装IP动态主机配置协议(DHCP)包。
6.根据权利要求1所述的方法,其中所述第一第二层包和所述第二OSI第二层包包括以下通信标准中的 一者或多者:以太网、高速分组接入(HSPA)、HSPA+、长期演进(LTE)、WiMax, GPRS, EDGE、GSM、CDMA、WiF1、CDMA2000、WCDMA、TD-SCDMA, BLUETOOTH 以及 WiBRO。
7.根据权利要求1所述的方法,其中所述通信系统是无线接入点。
8.根据权利要求1所述的方法,其中所述任何第三层包和所述至少一个OSI第三层包是IP包。
9.根据权利要求8所述的方法,其中所述第二OSI第二层包的所述目标地址通过在预定端口数处用户数据协议(UDP)包的交换来确定。
10.根据权利要求8所述的方法,其中当所述第二OSI第二层包的传输类型经确定以进行广播或组播并且第二 OSI第二层包被封装在至少一个IP包中时,所述至少一个IP包的端口数被设置到预定值,用于识别所述第二 OSI第二层包的所述传输类型是广播的还是组播的。
11.根据权利要求1所述的方法,其中当所述第一OSI第二层包被封装在至少一个OSI第三层包中时,所述第一 OSI第二层包从虚拟专用网络(VPN)中接收到,并且其中当所述第二 OSI第二层包被封装在至少一个OSI第三层包中时,所述第二 OSI第二层包通过VPN发送。
12.一种通信系统,其包括至少两个网络接口、至少一个处理单元以及包括由所述至少一个处理单元可执行的程序指令的计算机存储媒体,以执行以下操作:从第一网络接口中接收第一 OSI第二层包;确定所述第一 OSI第二层包的传输类型;根据所述第一 OSI第二层包的所述传输类型、起源和目的地确定是否发送第二 OSI第二层包,其中所述第二 OSI第二层包的内容是基于所述第一 OSI第二层包的内容确定的;当确定发送所述第二 OSI第二层包时,确定所述第二 OSI第二层包的目标地址和传输类型;并且当确定发送所述第二 OSI第二层包时,通过第二网络接口发送所述第二 OSI第二层包;其中当所述第一 OSI第二层包被封装在至少一个OSI第三层包中时,所述第二 OSI第二层包未被封装在任何OSI第三层包中;并且其中当所述第一 OSI第二层包未被封装在任何OSI第三层包中时,所述第二 OSI第二层包被封装在至少一个OSI第三层包中;其中所述至少一个处理单元耦合到所述至少两个网络接口和所述计算机存储媒体上。
13.根据权利要求12所述的通信系统,其中所述第二OSI第二层包的内容从所述计算机存储媒体中重新得到。
14.根据权利要求12所述的通信系统,其中所述第一OSI第二层包封装IP ARP包。
15.根据权利要求14所述的通信系统,其中程序指令由所述至少一个处理单元可执行,以进一步执行以下操作:存储包含在所述第一OSI第二层包中的所述IP ARP包,其中所述第一 OSI第二层包的传输类型是单播的并且其中所述第一 OSI第二层包是ARP回复。
16.根据权利要求12所述的通信系统,其中所述第一OSI第二层包封装IP DHCP包。
17.根据权利要求12所述的通信系统,其中所述第一OSI第二层包和所述第二 OSI第二层包包括以下通信标准中的一者或多者:以太网、高速分组接入(HSPA)、HSPA+、长期演进(LTE)、WiMax, GPRS, EDGE、GSM、CDMA、WiF1、CDMA2000、WCDMA、TDSCDMA、BLUETOOTH 以及WiBRO0
18.根据权利要求12所述的通信系统,其中所述通信系统是无线接入点。
19.根据权利要求12所述的通信系统,其中所述任何OSI第三层包和所述至少一个OSI第三层包是IP包。
20.根据权利要求19所述的通信系统,其中所述第二OSI第二层包的所述目标地址通过在预定端口数处m)P包的交换来确定。
21.根据权利要求19所述的通信系统,其中当所述第二OSI第二层包的传输类型经确定以进行广播或组播并且第二 OSI第二层包被封装在至少一个IP包中时,所述至少一个IP包的端口数被设置到预定值,用于识别所述第二 OSI第二层包的所述传输类型是广播的还是组播的。
22.根据权利要求12所述的通信系统,其中当所述第一OSI第二层包被封装在至少一个OSI第三层包中时,所述第一 OSI第二层包从虚拟专用网络(VPN)中接收到,并且其中当所述第二 OSI第二层包被封装在至少一个OSI第三层包中时,所述第二 OSI第二层包通过VPN发送。
23.根据权利要求22所述的通信系统,其中所述通信系统包括能够终止VPN的至少一个OSI第三层路由器以及能够接收和转发第二层包的至少一个OSI第二层交换机。
24.根据权利要求22所述的通信系统,其中所述至少两个网络接口中的一者进一步包括802.11接口并且所述至少两个网络接口中的另一者进一步包括802.16接口。
【文档编号】H04L29/06GK104081740SQ201280067636
【公开日】2014年10月1日 申请日期:2012年12月12日 优先权日:2012年12月12日
【发明者】吴锦超, 杨瑜, 廖家祺 申请人:柏思科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1