CN104509074A - 用于混合通信网络的地址解析机制 - Google Patents

用于混合通信网络的地址解析机制 Download PDF

Info

Publication number
CN104509074A
CN104509074A CN201380040138.8A CN201380040138A CN104509074A CN 104509074 A CN104509074 A CN 104509074A CN 201380040138 A CN201380040138 A CN 201380040138A CN 104509074 A CN104509074 A CN 104509074A
Authority
CN
China
Prior art keywords
mixing apparatus
link layer
layer address
address
message
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.)
Granted
Application number
CN201380040138.8A
Other languages
English (en)
Other versions
CN104509074B (zh
Inventor
S·B·小施鲁姆
L·W·央格三世
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN104509074A publication Critical patent/CN104509074A/zh
Application granted granted Critical
Publication of CN104509074B publication Critical patent/CN104509074B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • H04L12/5692Selection among different networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/677Multiple interfaces, e.g. multihomed nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

混合设备可以执行混合ARP功能性以管理其他混合设备的单个网络层地址与多个链路层地址之间的一对多关联性。根据该混合ARP功能性,该混合设备可以基于与目的地混合设备相关联的地址解析存储条目来确定传输路线、目的地混合设备的多个网络接口中对应的一个网络接口、以及该目的地混合设备的多个链路层地址中对应的一个链路层地址。可以在供传送给该目的地混合设备的帧中填充所标识出的链路层地址。另外,该混合ARP功能性可被配置成协同由较高协议层实现的常规ARP功能性来操作。该混合ARP功能性可以充当常规ARP功能性与混合通信网络的一个或多个混合设备之间的“代理”。

Description

用于混合通信网络的地址解析机制
相关申请
本申请要求于2012年7月31日提交的美国申请S/N.13/563,284的优先权权益。
背景
本发明主题内容的诸实施例一般涉及通信网络领域,尤其涉及用于混合通信网络的地址解析机制。
混合通信网络通常包括多种联网技术(例如,无线局域网(WLAN)技术、电力线通信技术、以太网等)。通常,通信机制和协议细节(例如设备和拓扑发现、与其他网络的桥接等等)对于每种联网技术来说是独特的。该多种联网技术通常使用具有桥接能力的设备来互连,具有桥接能力的设备在不同网络技术和介质之间转发帧以形成单个经扩展的通信网络。混合通信网络通常在任何两个混合设备之间给出多条帧递送路线。
概述
公开了混合通信网络中的地址解析机制的各种实施例。在一个实施例中,通信网络的第一混合设备确定消息被调度成从该第一混合设备传送给该通信网络的第二混合设备。第一混合设备和第二混合设备各自与多个网络接口相关联。第一混合设备至少部分地基于与第二混合设备相关联的一个或多个地址解析存储条目来确定该消息的传输路线以及与第二混合设备相关联的对应的第一网络接口。第一混合设备确定与关联于第二混合设备的第一网络接口相对应的第一链路层地址。第二混合设备与多个链路层地址相关联,该多个链路层地址中的每一个与该多个网络接口中对应的各个网络接口相关联。第一混合设备生成包括第一链路层地址的该消息。第一混合设备经由该传输路线来传送该消息。
在一些实施例中,一种方法包括:确定消息被调度成从通信网络的第一混合设备传送给该通信网络的第二混合设备,其中第一混合设备和第二混合设备各自与多个网络接口相关联;至少部分地基于与第二混合设备相关联的一个或多个地址解析存储条目来确定该消息的传输路线以及与第二混合设备相关联的对应的第一网络接口;确定与关联于第二混合设备的第一网络接口相对应的第一链路层地址,其中第二混合设备与多个链路层地址相关联,该多个链路层地址中的每一个与该多个网络接口中对应的各个网络接口相关联;生成包括第一链路层地址的该消息;以及经由该传输路线来传送该消息。
在一些实施例中,所述确定传输路线包括:确定是否要经由第一混合设备的这多个网络接口中的一个或多个网络接口来将该消息传送给第二混合设备;并且所述确定第一链路层地址包括:确定与第一混合设备的这多个网络接口中要藉以将该消息传送给第二混合设备的对应的一个或多个网络接口相关联的一个或多个链路层地址。
在一些实施例中,所述确定传输路线至少部分地基于与第二混合设备相关联的该一个或多个地址解析存储条目,该一个或多个地址解析存储条目至少包括与该消息相关联的话务类。
在一些实施例中,与第一混合设备的混合网络层相关联的高速缓存包括该一个或多个地址解析存储条目,其中该高速缓存包括该多个链路层地址中与关联于第二混合设备的这多个网络接口中的至少一个网络接口相对应的至少一个链路层地址、与第二混合设备相关联的网络地址、以及与第二混合设备相关联的路线信息。
在一些实施例中,与第二混合设备相关联的路线信息包括对于与第二混合设备相关联的这多个网络接口中的一个或多个网络接口而言的:先前选择的用于在第一混合设备与第二混合设备的该网络接口之间传送通信的传输路线、以及与第一混合设备和第二混合设备的该网络接口之间的一个或多个传输路线相关联的路线度量信息。
在一些实施例中,该方法进一步包括:在第一混合设备处从第二混合设备接收第二消息,其中该第二消息指示与第二混合设备相关联的这多个网络接口中的至少一个网络接口;以及更新与第二混合设备相关联的该一个或多个地址解析存储条目以反映与第二混合设备相关联的这多个网络接口中的该至少一个网络接口。
在一些实施例中,从第二混合设备接收的第二消息是地址解析协议(ARP)响应消息、ARP宣告消息、或者拓扑消息中的一者,其中第二混合设备是响应于来自第一混合设备的ARP请求消息而传送了该第二消息,该拓扑消息指示与第二混合设备相关联的该多个网络接口和该对应的多个链路层地址。
在一些实施例中,与关联于第二混合设备的第一网络接口相对应的第一链路层地址是与第二混合设备的混合网络层相关联的标识符。
在一些实施例中,所述确定消息被调度成从通信网络的第一混合设备传送给通信网络的第二混合设备包括:确定第一混合设备是否包括与第二混合设备相关联的这一个或多个地址解析存储条目;响应于确定第一混合设备包括与第二混合设备相关联的这一个或多个地址解析存储条目,至少部分地基于与第二混合设备相关联的这一个或多个地址解析存储条目来进行所述确定该消息的传输路线和与第二混合设备相关联的对应的第一网络接口;以及响应于确定第一混合设备不包括与第二混合设备相关联的这一个或多个地址解析存储条目,从第一混合设备向第二混合设备传送对与第二混合设备相关联的这多个链路层地址中的至少一个链路层地址的请求;以及响应于所述传送对与第二混合设备相关联的这多个链路层地址中的至少一个链路层地址的请求,至少部分地基于从第二混合设备接收的一个或多个响应来创建与第二混合设备相关联的这一个或多个地址解析存储条目。
在一些实施例中,所述确定消息的传输路线和与第二混合设备相关联的对应的第一网络接口以及所述确定与关联于第二混合设备的第一网络接口相对应的第一链路层地址包括:在第一混合设备的第一处理级处,至少部分地基于与第一处理级相关联的第一数据库来生成包括第二混合设备的第一链路层地址的该消息;在第一混合设备的第二处理级处,至少部分地基于与第二处理级相关联的第二数据库、和由第一处理级确定的第一链路层地址来确定用于将该消息传送给第二混合设备的该传输路线和对应的目的地链路层地址;在第一混合设备的第二处理级处,确定由第一处理级确定的第一链路层地址是否不同于由第二处理级确定的目的地链路层地址;在第一混合设备的第二处理级处,响应于确定由第一处理级确定的第一链路层地址不同于由第二处理级确定的目的地链路层地址,用该目的地链路层地址来替换掉该消息中的第一链路层地址;以及在第一混合设备的第二处理级处,响应于确定由第一处理级确定的第一链路层地址与由第二处理级确定的目的地链路层地址相同或者响应于所述用目的地链路层地址来替换掉该消息中的第一链路层地址,将该消息传送给第二混合设备。
在一些实施例中,与第一处理级相关联的第一数据库包括第二混合设备的网络地址和与第二混合设备相关联的第一链路层地址,其中与第二处理级相关联的第二数据库包括多个地址解析存储条目,以使得这多个地址解析存储条目中的每一个地址解析存储条目包括第二混合设备的该网络地址和与第二混合设备相关联的这多个链路层地址中的一个链路层地址,并且其中第一数据库中的第一链路层地址是指向第二数据库的这多个地址解析存储条目的指针。
在一些实施例中,第一数据库中的第一链路层地址是与第一混合设备和第二混合设备之间的优选传输路线相关联的链路层地址,或者是与第二混合设备的混合网络层相关联的标识符。
在一些实施例中,对于与第二混合设备相关联的这多个链路层地址中的一个或多个链路层地址,第二数据库包括先前选择的用于在第一混合设备与关联于第二混合设备的该链路层地址之间传送通信的传输路线、以及与第一混合设备和关联于第二混合设备的该网络接口之间的一个或多个传输路线相关联的路线度量信息。
在一些实施例中,第一混合设备的混合网络层包括第一处理级和第二处理级。
在一些实施例中,目的地链路层地址是以下各项中的一者:这多个链路层地址中与第二混合设备的这多个网络接口中的、第二混合设备被调度成藉以接收该消息的接收网络接口相关联的第二链路层地址;或者这多个链路层地址中与该多个链路层地址中关联于该接收网络接口的第二链路层地址不同的第三链路层地址;或者与第二混合设备的混合网络层相关联的标识符。
在一些实施例中,该方法进一步包括:响应于以下操作中的一者而至少删除与第二混合设备相关联的这一个或多个地址解析存储条目中的第一地址解析存储条目:确定在预定的时间区间期间没有从第二混合设备接收到通信;确定与第二混合设备相关联的这一个或多个地址解析存储条目中的第一地址解析存储条目在预定的老化时间区间期间未被用于将至少一条消息传送给第二混合设备;或者确定指派给与第二混合设备相关联的这一个或多个地址解析存储条目中的第一地址解析存储条目的时间戳已期满。
在一些实施例中,该方法进一步包括:从第二混合设备接收指示与第二混合设备相关联的第一链路层地址为无效的取消关联消息;以及响应于所述从第二混合设备接收到指示与第二混合设备相关联的第一链路层地址为无效的取消关联消息,更新与第二混合设备相关联的这一个或多个地址解析存储条目。
在一些实施例中,一种方法包括:在通信网络的第一混合设备的混合网络层处,检测来自第一混合设备的较高协议层的请求消息,其中该请求消息包括对与该通信网络的第二混合设备相关联的链路层地址的请求;在第一混合设备的混合网络层处,确定第一混合设备的混合网络层是否包括与第二混合设备相关联的链路层地址;响应于确定第一混合设备的混合网络层包括与第二混合设备相关联的链路层地址,从与第一混合设备的混合网络层相关联的第一数据库确定与第二混合设备相关联的标识符地址;向第一混合设备的较高协议层提供第一响应消息,该第一响应消息至少包括与第二混合设备相关联的该标识符地址;以及在混合网络层处丢弃该请求消息而不将该请求消息传送给第二混合设备;以及响应于确定第一混合设备的混合网络层不包括与第二混合设备相关联的链路层地址,将该请求消息传送给第二混合设备;响应于所述将请求消息传送给第二混合设备,在第一混合设备的混合网络层处从第二混合设备接收一条或多条响应消息;基于从第二混合设备接收的该一条或多条响应消息来更新第一数据库中与第二混合设备相关联的一个或多个地址解析存储条目;以及为第一混合设备的较高协议层生成该第一响应消息,其中该第一响应消息至少包括与第二混合设备相关联的该标识符地址。
在一些实施例中,响应于确定第一混合设备的混合网络层不包括与第二混合设备相关联的链路层地址,所述将请求消息传送给第二混合设备包括以下操作中的一者:修改从较高协议层接收的该请求消息并将经修改的请求消息传送给第二混合设备;或者丢弃从较高协议层接收的该请求消息并将新的请求消息传送给第二混合设备。
在一些实施例中,与第二混合设备相关联的该标识符地址包括以下一者:与第一混合设备和第二混合设备之间的优选传输路线相关联的链路层地址;与第二混合设备的混合网络层相关联的标识符;或者与第二混合设备的多个链路层地址中的一个链路层地址相关联的链路层地址。
在一些实施例中,响应于确定第一混合设备的混合网络层不包括与第二混合设备相关联的链路层地址,所述将请求消息传送给第二混合设备进一步包括:在第一数据库中生成地址解析存储条目,该地址解析存储条目包括与第二混合设备相关联的网络层地址和与第二混合设备相关联的空链路层地址;并且所述基于从第二混合设备接收的一条或多条响应消息来更新第一数据库中与第二混合设备相关联的一个或多个地址解析存储条目包括:从接收自第二混合设备的这一条或多条响应消息确定与第二混合设备相关联的链路层地址;以及用与第二混合设备相关联的链路层地址来替换掉该空链路层地址。
在一些实施例中,该方法进一步包括:从第一混合设备的较高协议层接收被调度成供传送给第二混合设备的消息,其中该消息包括与第二混合设备相关联的标识符地址;在第一混合设备的混合网络层处至少部分地基于第一数据库中与第二混合设备相关联的这一个或多个地址解析存储条目并且基于在来自较高协议层的该消息中接收到的标识符地址来确定用于将该消息传送给第二混合设备的传输路线和对应的目的地链路层地址;确定由较高协议层确定的标识符地址是否不同于由混合网络层确定的目的地链路层地址;响应于确定由较高协议层确定的该标识符地址不同于由混合网络层确定的该目的地链路层地址,用该目的地链路层地址来替换掉该标识符地址;以及响应于确定由较高协议层确定的该标识符地址匹配由混合网络层确定的该目的地链路层地址或者响应于所述用目的地链路层地址来替换掉该标识符地址,将该消息传送给第二混合设备。
在一些实施例中,一种混合网络设备包括:处理器单元以及与该处理器单元耦合的混合地址解析协议(ARP)单元,该混合ARP单元可操作用于确定消息被调度成从该混合网络设备传送给通信网络的第二混合网络设备,其中该混合网络设备和第二混合网络设备各自与多个网络接口相关联;至少部分地基于与第二混合网络设备相关联的一个或多个地址解析存储条目来确定该消息的传输路线和与第二混合网络设备相关联的对应的第一网络接口;确定与关联于第二混合网络设备的第一网络接口相对应的第一链路层地址,其中第二混合网络设备与多个链路层地址相关联,该多个链路层地址中的每一个与该多个网络接口中对应的各个网络接口相关联;生成包括第一链路层地址的该消息;以及经由该传输路线来传送该消息。
在一些实施例中,与该混合网络设备的混合网络层相关联的高速缓存包括该一个或多个地址解析存储条目,其中该高速缓存包括该多个链路层地址中与关联于第二混合网络设备的这多个网络接口中的至少一个网络接口相对应的至少一个链路层地址、与第二混合网络设备相关联的网络地址、以及与第二混合网络设备相关联的路线信息,并且其中对于与第二混合网络设备相关联的这多个网络接口中的一个或多个网络接口,与第二混合网络设备相关联的该路线信息包括:先前选择的用于在该混合网络设备与第二混合网络设备的该网络接口之间传送通信的传输路线、以及与该混合网络设备和第二混合网络设备的该网络接口之间的一个或多个传输路线相关联的路线度量信息。
在一些实施例中,混合ARP单元进一步操作用于:从第二混合网络设备接收第二消息,其中该第二消息指示与第二混合网络设备相关联的多个网络接口中的至少一个网络接口;以及更新与第二混合网络设备相关联的一个或多个地址解析存储条目以反映与第二混合网络设备相关联的多个网络接口中的该至少一个网络接口。
在一些实施例中,与关联于第二混合网络设备的第一网络接口相对应的第一链路层地址是与第二混合网络设备的混合网络层相关联的标识符。
在一些实施例中,可操作用于确定该消息的传输路线和与第二混合网络设备相关联的对应的第一网络接口的混合ARP单元以及可操作用于确定与关联于第二混合网络设备的第一网络接口相对应的第一链路层地址的混合ARP单元包括该混合ARP单元的第一处理级,该第一处理级可操作用于至少部分地基于与第一处理级相关联的第一数据库来生成包括第二混合网络设备的第一链路层地址的消息;该混合ARP单元的第二处理级,该第二处理级可操作用于至少部分地基于与第二处理级相关联的第二数据库和由第一处理级确定的第一链路层地址来确定用于将该消息传送给第二混合网络设备的该传输路线和对应的目的地链路层地址;确定由第一处理级确定的第一链路层地址是否不同于由第二处理级确定的目的地链路层地址;响应于混合ARP单元的第二处理级确定由混合ARP单元的第一处理级确定的第一链路层地址不同于由混合ARP单元的第二处理级确定的目的地链路层地址,用该目的地链路层地址来替换掉第一链路层地址;以及响应于混合ARP单元的第二处理级确定由混合ARP单元的第一处理级确定的第一链路层地址与由混合ARP单元的第二处理级确定的该目的地链路层地址相同或者响应于用该目的地链路层地址来替换掉该消息中的第一链路层地址,将该消息传送给第二混合网络设备。
在一些实施例中,与混合ARP单元的第一处理级相关联的第一数据库包括第二混合网络设备的网络地址和与第二混合网络设备相关联的第一链路层地址,其中与混合ARP单元的第二处理级相关联的第二数据库包括多个地址解析存储条目,以使得该多个地址解析存储条目中的每一个地址解析存储条目包括第二混合网络设备的该网络地址和与第二混合网络设备相关联的这多个链路层地址中的一个链路层地址,并且其中第一数据库中的这多个链路层地址中的第一链路层地址是指向第二数据库的这多个地址解析存储条目的指针。
在一些实施例中,第一数据库中的第一链路层地址是与该混合网络设备和第二混合网络设备之间的优选传输路线相关联的链路层地址,或者是与第二混合网络设备的混合网络层相关联的标识符。
在一些实施例中,对于与第二混合网络设备相关联的这多个链路层地址中的一个或多个链路层地址,第二数据库包括先前选择的用于在该混合网络设备与关联于第二混合网络设备的该链路层地址之间传送通信的传输路线、以及与该混合网络设备和关联于第二混合网络设备的网络接口之间的一个或多个传输路线相关联的路线度量信息。
在一些实施例中,该混合ARP单元进一步可操作用于:从第二混合网络设备接收指示与第二混合网络设备相关联的第一链路层地址为无效的取消关联消息;以及响应于混合ARP单元从第二混合网络设备接收到指示与第二混合网络设备相关联的第一链路层地址为无效的该取消关联消息,更新与第二混合网络设备相关联的这一个或多个地址解析存储条目。
在一些实施例中,一种混合网络设备包括处理器单元;以及该混合网络设备的混合网络层的混合地址解析协议(ARP)单元,其中该混合ARP单元与该处理器单元耦合,其中该混合ARP单元可操作用于:检测来自该混合网络设备的较高协议层的请求消息,其中该请求消息包括对与通信网络的第二混合网络设备相关联的链路层地址的请求;确定该混合网络设备的混合网络层是否包括与第二混合网络设备相关联的链路层地址;响应于混合ARP单元确定该混合网络设备的混合网络层包括与第二混合网络设备相关联的链路层地址,从与该混合网络设备的混合网络层相关联的第一数据库确定与第二混合网络设备相关联的标识符地址;向该混合网络设备的较高协议层提供第一响应消息,该第一响应消息至少包括与第二混合网络设备相关联的该标识符地址;以及在混合网络层处丢弃该请求消息而不将该请求消息传送给第二混合网络设备;以及响应于混合ARP单元确定该混合网络设备的混合网络层不包括与第二混合网络设备相关联的链路层地址,将该请求消息传送给第二混合网络设备;响应于混合ARP单元将该请求消息传送给第二混合网络设备,从第二混合网络设备接收一条或多条响应消息;基于从第二混合网络设备接收的该一条或多条响应消息来更新第一数据库中与第二混合网络设备相关联的一个或多个地址解析存储条目;以及为该混合网络设备的较高协议层生成第一响应消息,其中该第一响应消息至少包括与第二混合网络设备相关联的该标识符地址。
在一些实施例中,响应于混合ARP单元确定该混合网络设备的混合网络层不包括与第二混合网络设备相关联的链路层地址,该混合ARP单元可操作用于将请求消息传送给第二混合网络设备进一步包括该混合ARP单元可操作用于:在第一数据库中生成地址解析存储条目,该地址解析存储条目包括与第二混合网络设备相关联的网络层地址和与第二混合网络设备相关联的空链路层地址;并且该混合ARP单元可操作用于基于从第二混合网络设备接收的一条或多条响应消息来更新第一数据库中与第二混合网络设备相关联的这一个或多个地址解析存储条目包括该混合ARP单元可操作用于:从接收自第二混合网络设备的这一条或多条响应消息确定与第二混合网络设备相关联的链路层地址;以及用与第二混合网络设备相关联的该链路层地址来替换掉该空链路层地址。
在一些实施例中,混合ARP单元进一步可操作用于:从该混合网络设备的较高协议层接收被调度成供传送给第二混合网络设备的消息,其中该消息包括与第二混合网络设备相关联的该标识符地址;至少部分地基于第一数据库中与第二混合网络设备相关联的这一个或多个地址解析存储条目并且基于在来自较高协议层的消息中接收到的该标识符地址来确定用于将该消息传送给第二混合网络设备的传输路线和对应的目的地链路层地址;确定由较高协议层确定的标识符地址是否不同于由混合ARP单元确定的目的地链路层地址;响应于混合ARP单元确定由较高协议层确定的该标识符地址不同于由混合ARP单元确定的目的地链路层地址,用该目的地链路层地址来替换掉该标识符地址;以及响应于混合ARP单元确定由较高协议层确定的该标识符地址匹配由混合ARP单元确定的该目的地链路层地址或者响应于混合ARP单元用该目的地链路层地址来替换掉该标识符地址,将该消息传送给第二混合网络设备。
在一些实施例中,一种或多种其中存储有指令的机器可读存储介质,这些指令在由一个或多个处理器执行时使该一个或多个处理器执行操作,这些操作包括:确定消息被调度成从通信网络的第一混合设备传送给该通信网络的第二混合设备,其中第一混合设备和第二混合设备各自与多个网络接口相关联;至少部分地基于与第二混合设备相关联的一个或多个地址解析存储条目来确定该消息的传输路线和与第二混合设备相关联的对应的第一网络接口;确定与关联于第二混合设备的第一网络接口相对应的第一链路层地址,其中第二混合设备与多个链路层地址相关联,该多个链路层地址中的每一个与该多个网络接口中对应的各个网络接口相关联;生成包括第一链路层地址的该消息;经由该传输路线来传送该消息。
在一些实施例中,所述确定该消息的传输路线和与第二混合设备相关联的对应的第一网络接口的操作以及所述确定与关联于第二混合设备的第一网络接口相对应的第一链路层地址的操作包括:在第一混合设备的第一处理级处至少部分地基于与第一处理级相关联的第一数据库来生成包括第二混合设备的第一链路层地址的该消息;在第一混合设备的第二处理级处,至少部分地基于与第二处理级相关联的第二数据库和由第一处理级确定的第一链路层地址来确定用于将该消息传送给第二混合设备的该传输路线和对应的目的地链路层地址;在第一混合设备的第二处理级处,确定由第一处理级确定的第一链路层地址是否不同于由第二处理级确定的目的地链路层地址;在第一混合设备的第二处理级处,响应于确定由第一处理级确定的第一链路层地址不同于由第二处理级确定的目的地链路层地址,用该目的地链路层地址来替换掉该消息中的第一链路层地址;以及在第一混合设备的第二处理级处,响应于确定由第一处理级确定的第一链路层地址与由第二处理级确定的目的地链路层地址相同或者响应于所述用该目的地链路层地址来替换掉该消息中的第一链路层地址的操作,将该消息传送给第二混合设备。
在一些实施例中,与第一处理级相关联的第一数据库包括第二混合设备的网络地址和与第二混合设备相关联的第一链路层地址,其中与第二处理级相关联的第二数据库包括多个地址解析存储条目,以使得这多个地址解析存储条目中的每一个地址解析存储条目包括第二混合设备的该网络地址和与第二混合设备相关联的这多个链路层地址中的一个链路层地址,并且其中第一数据库中的第一链路层地址是指向第二数据库的这多个地址解析存储条目的指针。
在一些实施例中,一种或多种其中存储有指令的机器可读存储介质,这些指令在由一个或多个处理器执行时使该一个或多个处理器执行操作,这些操作包括:在通信网络的第一混合设备的混合网络层处,检测来自第一混合设备的较高协议层的请求消息,其中该请求消息包括对与该通信网络的第二混合设备相关联的链路层地址的请求;在第一混合设备的混合网络层处,确定第一混合设备的混合网络层是否包括与第二混合设备相关联的链路层地址;响应于确定第一混合设备的混合网络层包括与第二混合设备相关联的链路层地址,从与第一混合设备的混合网络层相关联的第一数据库确定与第二混合设备相关联的标识符地址;向第一混合设备的较高协议层提供第一响应消息,该第一响应消息至少包括与第二混合设备相关联的该标识符地址;以及在混合网络层处丢弃该请求消息而不将该请求消息传送给第二混合设备;以及响应于确定第一混合设备的混合网络层不包括与第二混合设备相关联的链路层地址,将该请求消息传送给第二混合设备;响应于所述将该请求消息传送给第二混合设备的操作,在第一混合设备的混合网络层处从第二混合设备接收一条或多条响应消息;基于从第二混合设备接收的该一条或多条响应消息来更新第一数据库中与第二混合设备相关联的一个或多个地址解析存储条目;以及为第一混合设备的较高协议层生成第一响应消息,其中该第一响应消息至少包括与第二混合设备相关联的该标识符地址。
在一些实施例中,响应于确定第一混合设备的混合网络层不包括与第二混合设备相关联的链路层地址,所述将请求消息传送给第二混合设备的操作进一步包括:在第一数据库中生成地址解析存储条目,该地址解析存储条目包括与第二混合设备相关联的网络层地址和与第二混合设备相关联的空链路层地址;并且所述基于从第二混合设备接收的一条或多条响应消息来更新第一数据库中与第二混合设备相关联的一个或多个地址解析存储条目的操作包括从接收自第二混合设备的这一条或多条响应消息确定与第二混合设备相关联的链路层地址;以及用与第二混合设备相关联的链路层地址来替换掉该空链路层地址。
在一些实施例中,所述操作进一步包括:从第一混合设备的较高协议层接收被调度成供传送给第二混合设备的消息,其中该消息包括与第二混合设备相关联的标识符地址;在第一混合设备的混合网络层处至少部分地基于第一数据库中与第二混合设备相关联的这一个或多个地址解析存储条目并且基于在来自较高协议层的消息中接收到的该标识符地址来确定用于将该消息传送给第二混合设备的传输路线和对应的目的地链路层地址;确定由较高协议层确定的标识符地址是否不同于由混合网络层确定的目的地链路层地址;响应于确定由较高协议层确定的标识符地址不同于由混合网络层确定的目的地链路层地址,用该目的地链路层地址来替换掉该标识符地址;以及响应于确定由较高协议层确定的标识符地址匹配由混合网络层确定的目的地链路层地址或者响应于所述用目的地链路层地址来替换掉该标识符地址的操作,将该消息传送给第二混合设备。
附图简要描述
通过参考附图,可以更好地理解本发明的诸实施例并使众多目的、特征和优点为本领域技术人员所显见。
图1是解说包括混合地址解析机制的混合通信网络100的框图;
图2是包括混合ARP功能性的混合设备的示例协议栈;
图3是用于将常规ARP功能性与混合ARP功能性相整合的混合设备的示例协议栈;
图4是解说混合设备填充混合ARP高速缓存并且使用该混合ARP高速缓存将帧传送给目的地网络设备的示例操作的流程图;
图5是解说两级混合地址解析过程的示例操作的流程图;
图6是解说混合ARP功能性协同常规ARP功能性来操作的示例操作的流程图;以及
图7是包括用于混合通信网络的混合ARP机制的电子设备的一个实施例的框图。
实施例描述
以下描述包括体现本发明主题内容的技术的示例性系统、方法、技术、指令序列、以及计算机程序产品。然而应理解,所描述的实施例在没有这些具体细节的情况下也可实践。例如,尽管在一些实施例中,可以为包括连接至无线局域网(WLAN)(例如,IEEE 802.11网络)、电力线通信(PLC)网络(例如,HomePlug AV网络)、和以太网的混合设备的混合通信网络实现地址解析机制,但是诸实施例并不被如此限定。在其他实施例中,可以为包括实现其他标准/协议(例如,同轴电缆多媒体联盟(MoCA)、WiMAX等)的其他合适类型的网络设备的混合通信网络实现本文中描述的地址解析机制。在其他实例中,公知的指令实例、协议、结构和技术未被详细示出以免混淆本描述。
常规的通信设备通常具有网络层地址(例如,网际协议版本4(IPv4)地址、网际协议版本6(IPv6)地址等)与链路层地址(例如,媒体接入控制(MAC)地址)之间的一对一关联性。常规的通信设备可以使用地址解析协议(ARP)技术来维护包含这些网络层与链路层关联性的ARP高速缓存并且在传送帧之前解析链路层地址。另一方面,混合通信设备包括多个接口(例如,以太网接口、WLAN接口、PLC接口等),该多个接口中的每个接口将该混合通信设备耦合至对应的通信网络(例如,以太网、WLAN、电力线网络等)。因此,混合通信设备通常具有单个网络层地址与多个链路层地址之间的一对多关联性。常规的ARP规程、ARP消息和ARP高速缓存通常被配置成仅处置网络层地址与链路层地址之间的一对一关联性。常规的ARP规程、ARP消息和ARP高速缓存可能不能胜任正确地处置混合通信设备和混合通信网络的网络层地址与链路层地址之间的一对多关联性。
混合设备可被配置成执行混合ARP功能性以管理混合通信网络中的其他混合设备的单个网络层地址与多个链路层地址之间的一对多关联性。在一些实施例中,混合设备的混合联网子层可以包括混合ARP单元和对应的混合ARP高速缓存。混合ARP单元可以管理用于将网络层地址与混合通信网络中的一个或多个链路层地址相关联的地址关联信息。混合ARP单元可以使用该地址关联信息来解析地址并且在被调度成将要传送的帧中填充恰适的目的地链路层地址,如以下将参照图2和图4所描述的。对于混合通信网络中的每个混合设备,混合ARP高速缓存可以包括多个数据条目,该多个数据条目中的每一个包括相同的网络层地址但包括不同的链路层地址。混合ARP高速缓存中的每一个数据条目还可以与传输路线信息相关联。混合ARP单元可以使用地址关联信息和对应的传输路线信息来为被调度成将要传送的帧选择目的地链路层地址和传输路线。在一些实施例中,混合ARP单元可被配置成在混合联网子层内实现两级过程以解析网络层地址和选择传输路线(和/或传送接口),如以下将在图5中所描述的。在一些实施例中,混合ARP单元可被配置成协同(由较高协议层实现的)常规ARP功能性来操作。如以下将在图3和图6中进一步描述的,混合ARP单元可充当较高协议层的常规ARP功能性与混合通信网络的一个或多个混合设备之间的“代理”。执行混合ARP功能性可以确保混合设备知晓关于混合通信网络中的所有混合设备的网络层地址与链路层地址关联性的完整映射。本文中描述的混合ARP功能性还可以帮助确保网络层地址与链路层地址之间的一对多关联性被正确地处置,而不会干扰常规ARP功能性的操作(若有)。
图1是解说包括混合地址解析机制的混合通信网络100的框图。混合通信网络100包括混合设备102和110。在图1的示例中,混合设备110是目的地或目标混合设备。混合设备102可以是源混合设备或转发混合设备。混合设备102包括混合ARP单元104、混合ARP高速缓存106、以及收发机单元108。目的地混合设备110包括混合ARP单元112、混合ARP高速缓存114、以及收发机单元116。尽管图1中并未描绘,但是混合设备102和110可以包括其他合适的处理单元(例如,用于生成被调度成将要传送的帧、处理所接收到的帧等)。在一个示例中,混合设备102和110中的每一者可以包括使混合设备能够分别连接至电力线网络、以太网、和WLAN的PLC接口、以太网接口、和/或WLAN接口。在一些实现中,混合设备102和110可以各自是具有合适的通信能力(例如,WLAN通信能力、电力线通信能力、以太网通信能力等)的电子设备,诸如膝上型计算机、平板计算机、移动电话、智能电器、游戏控制台、接入点、或其他合适的电子设备。在一些实施例中,除了电力线通信协议、WLAN通信协议、和以太网通信协议之外,混合设备102和110的通信单元还可实现其他协议和功能性以启用其他类型的通信(例如,蓝牙、WiMAX等)。
在一些实现中,如图2中所描绘的,混合设备102(和目的地混合设备110)的联网功能性可使用遵循国际标准组织(ISO)开放系统互连(OSI)参考模型的“分层”办法来划分成各子功能。该组联网协议层可被称为“协议栈”200。协议栈200通常被划分成“较高协议层”和“较低协议层”。较低协议层包括物理(PHY)层和媒体接入控制(MAC)层。通常,PHY层和对应的MAC层的数目可以基于与混合设备102相关联的网络接口的数目来确定。换言之,如果混合设备102包括两个网络接口,则混合设备102的协议栈通常包括两个PHY层204A和204B以及对应的两个MAC层206A和206B,如图2中所描绘的。PHY层204A和对应的MAC层206A将混合设备102耦合至通信网络202A。PHY层204B和对应的MAC层206B将混合设备102耦合至通信网络202B。较高协议层可以包括网络层208(例如,实现网际协议版本4(IPv4)通信协议、网际协议版本6(IPv6)通信协议、通信协议、或其他合适的网络层协议)、传输层210(例如,传输控制协议(TCP)、用户数据报协议(UDP)、或其他合适的取决于网络层协议的传输层协议)、以及一个或多个应用212。
混合设备102的协议栈200还可以包括网络层208与MAC层206A和206B之间的“混合联网子层”214。在一些实现中,混合联网子层214可以包括混合ARP单元104和混合ARP高速缓存106以执行以下图1和图4-6中所描述的功能性。混合联网子层214可以实现用于管理混合设备102中与单组较高协议层(例如,单个网络层和单个传输层)但与多个网络接口(例如,多个PHY层和多个MAC层)的通信的功能性。混合联网子层214还可以使得较高协议层能够如同混合设备102仅包括单个MAC层和对应的单个PHY层那样来操作。注意,取决于可能实现的联网技术和可任选的协议,协议栈200可包括其他合适的层或子层。此外,在一些实施例中,一个或多个其他子层(单独地或者与混合联网子层214相组合地)可以执行本文在图1-6中所描述的功能性。
回到图1,对于通信网络100的其他混合设备中的每一个混合设备(“目标混合设备”),混合ARP高速缓存106可以包括与目标混合设备110相关联的网络层地址和目标混合设备110的(与目标混合设备110的对应的一个或多个网络接口相关联的)一个或多个链路层地址。在一些实施例中,通信网络100中的每个目标混合设备110可以具有(与该混合设备的混合联网子层相关联的)唯一性标识符。该唯一性标识符可以是与目标混合设备110相关联的链路层地址之一、与目标混合设备110相关联的混合联网子层标识符(例如,IEEE1905.1抽象子层标识符)、等等。相应地,对于每个目标混合设备110,混合ARP高速缓存106还可以包括与目标混合设备110的混合联网子层相关联的唯一性标识符。在一些实施例中,混合ARP单元104可以将唯一性标识符指派给其混合设备102的混合联网子层。混合ARP单元104还可以将唯一性标识符指派给与通信网络100中的其他目标混合设备110相关联的混合联网子层。在其他实施例中,每个目标混合设备110可以确定其自己的唯一性标识符并且相应地通知混合设备102(例如,混合ARP单元104)和通信网络100的其他混合设备。混合ARP单元104可以使用与通信网络100中的每个目标混合设备110相关联的这些唯一性标识符来促成高速缓存输入/查找和ARP消息传输/解析。在一些实施例中,每个目标混合设备110的每个链路层地址还可以与网络拓扑信息、路线度量信息、以及先前选择的因发射帧的类而异的路线信息相关联。除了网络层地址和对应的一个或多个链路层地址之外,混合ARP单元104还可以在混合ARP高速缓存106中存储网络拓扑信息、传输路线信息、和/或路线度量信息。混合ARP单元104可以使用该网络拓扑信息、传输路线信息、和/或路线度量信息来选择要在被调度成传送给通信网络100中的其他设备的帧中填充的恰适的链路层地址。
如将在图4中进一步描述的,混合ARP单元104可以通过使用ARP消息和拓扑消息的组合来维护混合ARP高速缓存106。参照图1,混合ARP单元104可以传送包括目的地混合设备110的网络层地址的ARP请求消息。在阶段A,混合ARP单元104响应于传送ARP请求消息而从目的地混合设备110(例如,从混合ARP单元112)接收一条或多条ARP响应消息和/或拓扑消息。在阶段B,混合ARP单元104可以更新混合ARP高速缓存106,存储目的地混合设备110的网络层地址与一个或多个链路层地址之间的关联性,和/或存储与目的地混合设备110的一个或多个链路层地址相关联的路线信息。换言之,基于在阶段A接收到的ARP响应消息和/或拓扑消息,混合ARP单元104可以用(诸)条目来更新混合ARP高速缓存106以在被调度成要被传送给目的地混合设备110的帧中填充目的地链路层地址。ARP高速缓存条目可以包括与目的地混合设备110相关联的网络层地址、与目的地混合设备110的对应的一个或多个网络接口相关联的一个或多个链路层地址、与目的地混合设备110的每个链路层地址相关联的优选传输路线、先前使用的与目的地混合设备110的每个链路层地址相关联的传输路线、与用于与目的地混合设备110通信的每个传输路线相关联的路线度量、等等。在阶段C,混合ARP单元104可以选择(例如,基于混合ARP高速缓存106中的路线度量信息、传输路线信息、地址关联信息、和/或其他信息)用于与目的地混合设备110通信的传输路线、传送接口、和/或恰适的目的地链路层接口。混合ARP单元104可以相应地填充该帧并且经由所选择的传送接口来将该帧传送给目的地混合设备110。以下参照图4进一步描述混合ARP单元104填充混合ARP高速缓存106和选择最优的传送接口、目的地链路层地址、和/或传输路线的操作。
在一些实施例中,混合ARP单元104的功能性可以跨两个混合地址解析级拆分,并且混合ARP高速缓存106可以被实现为两级高速缓存。如以下将在图5中进一步描述的,这两个混合地址解析级可以协同地从该两级混合ARP高速缓存中选择传送接口和/或目的地链路层地址以用于填充该帧(阶段D)。更具体地,对于每个目标设备(无论是目标混合设备还是目标旧式设备),第一级混合ARP高速缓存可以包括单个条目,该单个条目包括该目标设备的网络层地址和该目标设备的一个链路层地址(无论该目标设备是旧式设备还是混合设备)。如以上所讨论的,该目标混合设备可以包括多个网络接口,该多个网络接口中的每一个网络接口将目标混合设备连接至对应的多个通信网络。目标旧式设备仅包括将该目标旧式设备耦合至单个通信网络的一个网络接口。对于目标混合设备,第一级混合ARP高速缓存中的条目可以指示目标混合设备的网络层地址与该目标混合设备的混合联网子层标识符之间的关联性。基于与目标混合设备相关联的网络层地址的知识,第一混合地址解析级可以定位(第一级混合ARP高速缓存的)包括与该目标混合设备相关联的网络层地址和对应的链路层地址的条目。第一混合地址解析级可以使用从第一级混合ARP高速缓存中检索到的链路层地址来填充该帧中的目的地链路层地址字段。接下来,第二混合地址解析级可以将该帧中的(由第一混合地址解析级确定的)该链路层地址用作定位第二级混合ARP高速缓存的一个或多个数据库中的一个或多个匹配条目的指针。第二混合地址解析级可以选择传输路线和恰适的目的地链路层地址。如果由第二混合地址解析级选择的目的地链路层地址不同于该帧中的由第一混合地址解析级填充的目的地链路层地址,则用由第二混合地址解析级选择的链路层地址来覆写掉该帧中的链路层地址。
注意,在一些实施例中,第一混合地址解析级和第二混合地址解析级可被实现为混合ARP单元104的一部分。在其他实施例中,第一混合地址解析级和第二混合地址解析级可由通信上彼此耦合的相异处理单元来实现。在一些实施例中,第一级混合ARP高速缓存和第二级混合ARP高速缓存可被实现为混合ARP高速缓存106的一部分。在另一实施例中,第一级混合ARP高速缓存和第二级混合ARP高速缓存可以实现在不同的计算机系统、服务器等上。在一些实施例中,第一级混合ARP高速缓存和第二级混合ARP高速缓存可分别被实现为第一混合地址解析级和第二混合地址解析级的一部分。在其他实施例中,第一级混合ARP高速缓存可以异于(且可耦合于)第一混合地址解析级;而第二级混合ARP高速缓存可以异于(且耦合于)第二混合地址解析级。在图5中进一步描述用于解析网络层地址和为帧递送选择传输路线和/或传送接口的该两级过程的操作。
在一些实施例中,可以无需为了实现混合ARP功能性而禁用/移除较高协议层的现有/常规ARP功能性。取而代之的是,混合ARP单元104可以通过从混合ARP高速缓存中选择目的地链路层地址并且覆写掉由常规ARP功能性填充的目的地链路层地址(若需要)来协同常规ARP功能性执行混合ARP功能性(阶段E)。更具体地,如由图3的协议栈300所描绘的,混合ARP单元104和混合ARP高速缓存106可以协同常规ARP单元302和常规ARP高速缓存304来操作。在图3中,混合设备102的较高协议层(例如,网络层208)关联于(例如,包括或耦合于)常规ARP单元302和常规ARP高速缓存304。常规ARP单元302通常不被配置成管理具有多个链路层地址的混合设备。因此,常规ARP单元302(在常规ARP高速缓存304中)为通信网络100中的每个网络设备维护网络层地址与链路层地址之间的一对一关联性(无论该网络设备是旧式设备还是混合设备)。混合ARP单元104可以充当常规ARP单元302的“代理”,以使得较高协议层208、210和212不知晓并且不受底层通信网络100的混合本质、实现多个网络接口的混合设备102和110、以及单个网络层地址与多个链路层地址之间的一对多关联性的影响。混合ARP单元104可以截取由常规ARP单元302呈递的ARP请求消息、从其他混合/旧式设备接收到的ARP请求消息、由常规ARP单元302生成的ARP宣告消息(或ARP响应消息)、以及从其他混合/旧式设备接收到的ARP宣告消息。如以下将在图6中进一步描述的,混合ARP单元104可以:A)丢弃或更改由常规ARP单元302生成的ARP请求消息,B)在将收到ARP宣告消息提供给常规ARP单元302之前丢弃或更改该收到ARP宣告消息,C)生成ARP请求消息并且经由混合设备102的多个网络接口来传送这些ARP请求消息,和/或D)基于收到ARP响应消息和/或拓扑消息来生成仅被呈递给常规ARP单元302的ARP宣告消息。
注意,图1中所描绘的阶段A-E可以不是顺序的,并且在一些实施例中可仅执行图1中所描绘的这些阶段的子集。在一个示例中,可仅在混合设备102接收到ARP响应消息(或ARP宣告消息、拓扑消息等)的情况下和/或在混合设备102的混合ARP高速缓存106不包括必需的地址关联信息的情况下才执行阶段A和B。作为另一示例,混合ARP单元104可以实现阶段C、D和E中的任一者。换言之,混合ARP单元104可以执行:1)具有单级混合高速缓存的单级混合地址解析过程以选择目的地链路层地址(阶段C),2)具有双级混合高速缓存的双级混合地址解析过程以选择目的地链路层地址(阶段D),或者3)协同常规地址解析过程和常规高速缓存的具有单级混合高速缓存的单级混合地址解析过程以选择目的地链路层地址(阶段E)。
图4是解说混合设备填充混合ARP高速缓存并且使用该混合ARP高速缓存来将帧传送给目的地网络设备的示例操作的流程图(“流程”)400。流程400在框402处开始。
在框402,源混合设备确定要将帧传送给通信网络的目的地网络设备。参照图1的示例,源混合设备102的混合ARP单元104可以确定帧被调度成要被传送给目的地网络设备110。如以上所讨论的,混合ARP单元104可被实现为混合设备102的混合联网子层214的一部分。因此,在一些实施例中,混合设备102的较高协议层可以生成该帧并且将该帧提供给混合联网子层214(以供传输)。在其他实施例中,混合联网子层214可以生成消息以供传送给目的地网络设备110。如以下将在图4中进一步描述的,混合ARP单元104可以使用混合ARP高速缓存106来填充被调度成要被传送的帧中与目的地网络设备110相关联的恰适的目的地链路层地址。注意,目的地网络设备可以是旧式设备或混合设备。该流程在框404处继续。
在框404,确定混合ARP高速缓存是否包括与目的地网络设备相关联的一个或多个条目。例如,混合ARP单元104可以确定混合ARP高速缓存106是否包括与目的地网络设备110相关联的一个或多个条目。在一些实施例中,混合ARP单元104可以(从被调度成要被传送的帧)确定与目的地网络设备110相关联的网络层地址。混合ARP单元104可以随后确定混合ARP高速缓存106是否包括与关联于目的地网络设备110的网络层地址相对应的一个或多个条目。如以上所描述的,混合ARP高速缓存106也可被实现为混合设备102的混合联网子层214的一部分。在一些实施例中,如以上所描绘的,混合ARP高速缓存106可以与混合ARP单元104分开来实现,但是可以与混合ARP单元104通信地耦合。在其他实施例中,混合ARP高速缓存106可以被实现为混合ARP单元104的一部分。如果混合ARP单元104确定混合ARP高速缓存106不包括与目的地网络设备110相关联的任何条目,则流程在框406处继续。否则,如果混合ARP单元104确定混合ARP高速缓存106包括与目的地网络设备110相关联的一个或多个条目,则流程在框412处继续。
在框406,混合设备将ARP请求消息传送给目的地网络设备。如果混合ARP单元104确定混合ARP高速缓存106不包括与目的地网络设备110的网络层地址相关联的任何条目/信息,则流程400从框404移至框406。参照图1的示例,混合ARP单元104可以(经由收发机单元108)将ARP请求消息传送给目的地网络设备110。在一些实施例中,所传送的ARP请求消息可以是包括目的地网络设备110的网络层地址的单播消息。在一些实施例中,如果目的地网络设备是旧式设备并且混合ARP单元104“知晓”由该旧式设备支持的通信协议(例如,WLAN通信协议),则混合ARP单元104可以经由恰适的网络接口(例如,WLAN接口)来传送该ARP请求消息。如果混合ARP单元104“不知晓”该旧式设备所支持的通信协议、如果目的地网络设备是混合设备、或者如果混合ARP单元104不知道目的地网络设备是混合设备还是旧式设备,则混合ARP单元104可以经由其所有的网络接口来传送该ARP请求消息。在一些实施例中,混合ARP单元104可以知道目的地网络设备110相对于混合设备102的位置。在此实施例中,混合ARP单元104可以经由混合设备102的诸网络接口中的一个(或子集)来传送ARP请求消息。该流程在框408处继续。
在框408,从目的地网络设备接收一条或多条ARP响应消息和/或拓扑消息。例如,混合ARP单元104可以从目的地网络设备110接收一条或多条ARP响应消息和/或拓扑消息。在一些实施例中,如果目的地网络设备110是旧式设备,则混合ARP单元104可以(从目的地网络设备110)接收仅一条指示网络层地址和对应的单个链路层地址的ARP响应消息。在此实施例中,混合ARP单元104可能不会从目的地网络设备110接收到拓扑消息。在另一实施例中,如果目的地网络设备110是混合设备,则混合ARP单元104可以(从目的地网络设备110)接收关于与目的地网络设备110相关联的对应的多个链路层地址的多条ARP响应消息。换言之,对于与目的地网络设备110相关联的每个链路层地址(例如,网络接口),混合ARP单元104可以接收指示网络层地址与链路层地址之间的关联性的ARP响应消息。如果目的地网络设备110是混合设备,则混合ARP单元104还可以从目的地网络设备110接收一条或多条拓扑消息。这些拓扑消息可以包括与目的地网络设备110相关联的所有链路层地址的列表,如以下将描述的。在一些实施例中,如果目的地网络设备110是混合设备,则所接收到的ARP响应消息和/或拓扑消息可以包括与目的地网络设备110的混合联网子层相关联的唯一性标识符(例如,链路层地址、混合联网子层标识符、或另一合适的标识符)。
在一些实施例中,如果混合ARP单元104从目的地网络设备110接收到拓扑消息,则这可以指示目的地网络设备110是具有混合联网能力的设备(例如,具有IEEE 1905.1能力的设备)。拓扑消息可以包括链路层拓扑发现(LLTD)消息、链路层发现协议(LLDP)消息、IEEE 1905.1拓扑消息、或其他合适的消息。在一些实施例中,拓扑消息可以指示目的地网络设备110的网络层地址及其所有相关联的链路层地址。在此实施例中,拓扑消息可以足以使混合ARP单元104在混合ARP高速缓存106中填充关于目的地网络设备110的地址关联信息。在另一实施例中,拓扑消息可以指示目的地网络设备110的混合联网子层标识符以及所有相关联的链路层地址。在此实施例中,拓扑消息可以不包括目的地网络设备110的网络层地址。在此实施例中,混合ARP高速缓存106可以(基于先前接收到的消息/帧而)包括关于由拓扑消息标识的链路层地址之一的网络层地址与链路层地址关联性,或者可以包括网络层地址与混合联网子层标识符之间的关联性。相应地,拓扑消息可被用于完全填充关于混合联网子层标识符的网络层与链路层关联性,并且确保混合ARP高速缓存106不包括关于目的地网络设备110的旧的/无效的关联性。如以下将在框410处进一步讨论的,混合ARP单元104可以使用ARP响应消息和拓扑消息的组合来填充/管理混合ARP高速缓存106的内容。该流程在框410处继续。
在框410,基于所接收到的一条或多条ARP响应消息和/或拓扑消息来更新混合ARP高速缓存。例如,混合ARP单元104可以至少部分地基于在框408处从目的地网络设备110接收到的这一条或多条ARP响应消息和/或拓扑消息来更新混合ARP高速缓存106。混合ARP高速缓存106可以包括与目的地网络设备110相关联的网络层地址、与目的地网络设备110的对应的一个或多个网络接口相关联的一个或多个链路层地址、与每个链路层地址相关联的优选传输路线、先前使用的与每个链路层地址相关联的传输路线、与混合设备102和目的地网络设备110之间的每个传输路线相关联的路线度量信息、等等。各种机制可被用于实现混合ARP高速缓存106。在一个实施例中,如果目的地网络设备是混合设备110,则混合ARP高速缓存106可以包括关于混合设备110的多个条目。与混合设备110相关联的这多个条目中的每一个条目可以具有共同的网络层地址,但可具有不同的链路层地址。换言之,对于混合设备110,混合ARP高速缓存106可以为网络层地址与链路层地址之间的每一个关联包括一个条目。因此,如果混合设备110包括5个网络接口(和对应的5个链路层地址),则混合ARP高速缓存106可以包括关于混合设备110的5个条目。混合ARP高速缓存106中的每个条目可以指示该(跨所有链路层地址共同的)网络层地址与这5个链路层地址中的1个链路层地址之间的关联性。另外,每个高速缓存条目还可以指示与链路层地址相关联的优选传输路线(亦称为递送路线)。在一些实施例中,混合ARP高速缓存106可被组织化(或者可以包括与同一混合设备110相关联的诸条目之间的链接)以使混合ARP单元104能够(基于关于诸链路层地址中的一个链路层地址、网络层地址、混合联网子层标识符等的知识来)快速地定位与混合设备110相关联的所有条目。
在另一实施例中,混合ARP高速缓存106可被组织成包括主ARP数据库和副ARP数据库。对于每个网络设备,主ARP数据库可以包括指示网络层地址与单个链路层地址之间的关联性的单个条目(无论该网络设备是旧式设备还是混合设备)。在一些实施例中,如果网络设备是混合设备,则主ARP数据库可以包括指示网络层地址与混合联网子层标识符之间的关联性的单个条目。副ARP数据库可以包括与该网络设备相关联的所有链路层地址的列表。副ARP数据库和/或主ARP数据还可以包括主ARP数据库与副ARP数据库之间的恰适链接以使混合ARP单元104能够容易地定位相关条目。在一些实施例中,对于主ARP数据库中与旧式设备相关联的每个条目,副ARP数据库可以包括标识单个相关联的链路层地址的单个条目。替换地,在其他实施例中,如果主ARP数据库指示网络设备是旧式设备,则副ARP数据库可以不包括关于该网络设备的任何条目。在此实施例中,副ARP数据库可以仅包括关于被指定为混合设备的那些网络设备的链路层地址的列表。
在一些实施例中,混合ARP高速缓存106中的每个条目还可以与传输路线信息、网络拓扑信息、和/或路线度量信息相关联。混合ARP单元104可以使用传输路线信息、网络拓扑信息、和/或路线度量信息来选择应当在被调度成要被传送的帧中填充的恰适的目的地链路层地址。在一些实施例中,传输路线信息、网络拓扑信息、和/或路线度量信息可被整合到混合ARP高速缓存106中。在另一实施例中,在混合ARP高速缓存106被组织化成主和副ARP数据库的情况下,传输路线信息、网络拓扑信息、和/或路线度量信息可被整合到副ARP数据库中。在另一实施例中,传输路线信息、网络拓扑信息、和/或路线度量信息可被存储在一个或多个分开的路线数据库中。混合ARP高速缓存106(或副ARP数据库)可以包括将混合ARP高速缓存106(或副ARP数据库)中的条目链接到路线数据库中对应的传输路线信息、网络拓扑信息、和/或路线度量信息的指针。
在一些实施例中,混合ARP高速缓存106中的每个条目还可以与选择历史信息相关联,该选择历史信息指示混合ARP单元104上一次将该条目用于填充帧中的目的地链路层地址字段是在何时、该帧的类型/类、被用于传送该帧的传输路线等。该选择历史信息可被用于维护为特定类的帧、或者具有共同特性的帧集合选择目的地链路层地址和传输路线时的一致性。该选择历史信息可被:A)存储为混合ARP高速缓存106的一部分,B)存储为副(或主)ARP数据库的一部分,或C)存储在分开的数据库中。在更新了混合ARP高速缓存106之后,该流程在框412处继续。
在框412,至少部分地基于混合ARP高速缓存来确定传输路线和传送接口。例如,混合ARP单元104可以访问混合ARP高速缓存106并且标识混合ARP高速缓存106中与目的地混合设备110相关联的一个或多个条目。在一些实施例中,与目的地网络设备110的混合联网子层(例如,IEEE 1905.1抽象子层)相关联的唯一性标识符可被用来标识混合ARP高速缓存106中对应于目的地混合设备110的条目。基于在混合ARP高速缓存106中标识出的这一个或多个条目,混合ARP单元104可以选择用于该帧的传输路线和应当从(源混合设备102的)哪个传送接口将该帧传送给目的地混合设备110。混合ARP单元104还可以(例如,使用混合ARP高速缓存106来)确定与所选择的传送接口和传输路线相关联的源链路层地址。在一些实施例中,对应当使用混合ARP高速缓存106的哪个条目(例如,应当使用哪个网络接口来传送该帧)的选择可以基于使用网络拓扑信息、路线度量信息、选择历史信息等确定的优选传输路线。例如,混合ARP单元104可以首先(例如,基于分析通信介质性能值来)选择传输路线并且可以随后基于所选择的传输路线来选择传送接口。在另一实施例中,混合ARP单元104可以首先(例如,基于由目的地网络设备支持的网络接口、通信网络性能值等来)选择传送接口,并且可以随后选择源自所选择的传送接口的传输路线。该流程在框414处继续。
在框414,至少部分地基于混合ARP高速缓存来确定目的地链路层地址。例如,混合ARP单元104可以访问混合ARP高速缓存106并且标识与目的地网络设备110相关联的目的地链路层地址。在一些实施例中,混合ARP单元104可以基于在框412处所选择的传输路线来确定目的地网络设备110的接收接口。在此实施例中,目的地链路层地址(例如,媒体接入控制(MAC)地址)可以是对应于目的地网络设备110的接收接口的链路层地址。在另一实施例中,与目的地混合设备的混合联网子层相关联的标识符可以被选择为目的地链路层地址。在另一实施例中,与目的地混合设备的这多个网络接口中的任何网络接口相关联的链路层地址(该链路层地址未必与接收接口相关联)可被选择为目的地链路层地址。该流程在框416处继续。
在框416,从该传送接口并且经由该传输路线将包括目的地链路层地址的该帧传送给目的地混合设备。例如,混合ARP单元104可以在该帧的源链路层地址字段和目的地链路层地址字段中填充源链路层地址和目的地链路层地址。混合ARP单元104可以随后将该帧提供给收发机单元108以供传送给目的地混合设备110。收发机单元108可以经由所选择的传输路线将该帧从传送接口传送至目的地混合设备110。该流程从框416结束。
应当注意,尽管图4描绘了在混合ARP高速缓存106不包括关于目的地网络设备110的一个或多个条目的情况下混合设备102将ARP请求消息传送给目的地网络设备110,但是诸实施例并不被如此限定。在另一实施例中,混合设备102可以传送ARP请求消息,而无论帧是否被调度成要被传送给目的地网络设备110。例如,混合设备102可以按周期性/预定的时间间隔来将ARP请求消息传送给通信网络100中的一个或多个网络设备。在另一实施例中,响应于确定帧被调度成要被传送给目的地网络设备110,混合设备102可以不去确定混合ARP高速缓存106是否包括与目的地混合设备110相关联的一个或多个条目。取而代之的是,混合设备102可以响应于确定要将帧传送给目的地混合设备110而自动地将ARP请求消息传送给目的地混合设备110。
在一些实施例中,混合ARP单元104可以在混合ARP高速缓存106中维护关于混合设备102正与其活跃地通信的那些网络层地址(例如,那些旧式设备或混合设备的网络层地址)的条目。如果混合ARP单元104从通信网络100中的另一网络设备(例如,混合设备110)接收到ARP宣告消息(和/或拓扑消息),则在(与混合设备110相关联的)一个或多个对应条目已存在于混合ARP高速缓存106中的情况下或者在存在被调度成要被传送给混合设备110的排队帧的情况下,混合ARP单元104可以基于ARP宣告消息(和/或拓扑消息)中的信息来更新混合ARP高速缓存106。否则,混合ARP单元104可以丢弃所接收到的ARP宣告消息(和/或拓扑消息)。在其他实施例中,混合ARP单元104可以在混合ARP高速缓存106中维护关于通信网络100中的所有网络设备的条目,而无论混合设备102是否正与这些网络设备活跃地通信。
图5是解说两级混合地址解析过程的示例操作的流程图500。流程500在框502处开始。
在框502,源混合设备确定要将帧传送给通信网络的目的地网络设备。参照图1的示例,源混合设备102的混合ARP单元104可以确定帧被调度成要被传送给目的地网络设备110。如以下将在图5中进一步描述的,混合ARP单元104可以实现两级混合地址解析过程以选择并在被调度成要被传送的帧中填充与目的地网络设备110相关联的恰适的目的地链路层地址。注意,目的地网络设备可以是旧式设备或混合设备。该流程在框504处继续。
在框504,源混合设备的第一混合地址解析级用从第一级混合ARP高速缓存标识出的目的地链路层地址(“第一级目的地链路层地址”)来填充该帧。在图5中描述的两级混合地址解析过程中,与第一混合地址解析级相关联的第一级混合ARP高速缓存可以包括关于通信网络100中的每个网络设备的单个条目(无论该网络设备是旧式设备还是混合设备)。换言之,第一级混合ARP高速缓存可以为每个唯一性网络层地址包括单个条目。对于第一级混合ARP高速缓存中的每个条目,与网络层地址相关联的链路层地址可以是该网络设备的任何链路层地址。在一些实施例中,从第一级混合ARP高速缓存确定的第一级目的地链路层地址可以是与目的地网络设备的优选传输路线相关联的链路层地址。在另一实施例中,如果目的地网络设备是混合设备,则第一级目的地链路层地址可以是混合联网子层标识符。在另一实施例中,如果目的地网络设备是混合设备,则第一级目的地链路层地址可以是该混合设备的任何任意选择的链路层地址。为了解析被调度成要被传送的帧中的网络层地址,第一混合地址解析级可以(从被调度成要被传送的帧)确定目的地网络设备的网络层地址。第一混合地址解析级可以随后标识第一级混合ARP高速缓存中的包括目的地网络设备的网络层地址的条目,并且可以标识对应的第一级目的地链路层地址。所标识出的第一级目的地链路层地址可被填充在该帧的目的地链路层地址字段中。如果第一级混合ARP高速缓存不包括与被调度成要被传送的帧中的网络层地址相对应的条目(或链路层地址),则第一混合地址解析级可以将ARP请求传送给目的地网络设备并且可以相应地填充第一级混合ARP高速缓存,如以上参照图4的框404-410所描述的。第一混合地址解析级可以将包括第一级目的地链路层地址的该帧提供给第二混合地址解析级。该流程在框506处继续。
在框506,源混合设备的第二混合地址解析级确定从第二级混合ARP高速缓存标识出的目的地链路层地址(“第二级目的地链路层地址”)。在图5中描述的两级混合地址解析过程中,第二级混合ARP高速缓存可以包括与通信网络100中的每个网络设备相关联的所有链路层地址的列表。在一些实施例中,如果目的地网络设备是旧式设备,则第二级混合ARP高速缓存可以包括与该旧式设备相关联的单个链路层地址。在其他实施例中,如果目的地网络设备是旧式设备,则第二级混合ARP高速缓存可以不包括与旧式设备相关联的任何条目。在一些实施例中,如果目的地网络设备是混合设备,则第二级混合ARP高速缓存可以包括与该混合设备相关联的所有链路层地址。第二级混合ARP高速缓存可以包括或者可以不包括与混合设备相关联的混合联网子层标识符。第二级混合ARP高速缓存还可以包括关于第二级混合ARP高速缓存中的每个条目的传输路线信息、网络拓扑信息、路线度量信息、和/或选择历史信息。在一些实施例中,第二级混合ARP高速缓存可以异于第一级混合ARP高速缓存。如以上所描述的,选择历史信息可以包括关于哪些传输路线先前被用于将消息传送给特定的目的地链路层地址的历史信息。取决于被调度成要被传送的消息的特性/类型,可以重用先前被用于向该目的地链路层地址进行传送的传输路线。在一些实施例中,链路层地址的列表、传输路线信息、网络拓扑信息、路线度量信息、和/或选择历史信息可被存储在单个数据库中。在其他实施例中,链路层地址的列表、传输路线信息、网络拓扑信息、路线度量信息、和/或选择历史信息可以跨多个数据库存储。
第二混合地址解析级可以将第一级目的地链路层地址用作指针以标识第二级混合ARP高速缓存中的条目的子集并且相应地标识与目的地网络设备相关联的所有链路层地址。另外,第二混合地址解析级还可以(从第二混合ARP高速缓存)确定与目的地网络设备相关联的混合联网子层标识符、传输路线信息、网络拓扑信息、路线度量信息、和/或选择历史信息。在一些实施例中,第二混合地址解析级可以首先至少部分地基于分析与每个所标识出的条目相关联的网络拓扑信息、路线度量信息、和/或选择历史信息来选择传输路线。第二混合地址解析级可以随后基于所选择的传输路线来选择第二级目的地链路层地址。在其他实施例中,第二混合地址解析级可以首先选择第二级目的地链路层地址并且随后基于所选择的第二级目的地链路层地址来选择传输路线。该流程在框508处继续。
在框508,确定第一级目的地链路层地址是否匹配第二级目的地链路层地址。例如,第二混合地址解析级可以确定第一级目的地链路层地址是否匹配第二级目的地链路层地址。如果确定第一级目的地链路层地址不匹配第二级目的地链路层地址,则流程在框510处继续。否则,该流程在框512处继续。
在框510,在被调度成要被传送的帧中用第二级目的地链路层地址来替换第一级目的地链路层地址。如果确定第一级目的地链路层地址不匹配第二级目的地链路层地址,则流程500从框508移至框510。在一些实施例中,第二混合地址解析级可以用第二级目的地链路层地址来覆写掉被调度成要被传送的帧中的目的地链路层地址字段中的第一级目的地链路层地址。该流程在框512处继续。
在框512,经由该传输路线将包括恰适的目的地链路层地址的该帧传送给目的地混合设备。该流程从框512结束。
应当注意,尽管图5描述了第一混合地址解析级在该帧中填充第一级目的地链路层地址并且第二混合地址解析级用第二级目的地链路层地址来覆写掉第一级目的地链路层地址(若需要),但是诸实施例并不被如此限定。在一些实施例中,第一混合地址解析级可以确定第一级目的地链路层地址,但是可以不将该值写入该帧的目的地链路层地址字段中。取而代之的是,第一混合地址解析级可以将第一级目的地链路层地址提供给第二混合地址解析级(例如,在消息中、在第一级混合ARP高速缓存中的条目号中等)。如以上描述的,第二混合地址解析级可以使用第一级目的地链路层地址来选择第二级目的地链路层地址。第二混合地址解析级可以随后将第二级目的地链路层地址写入该帧的目的地链路层地址字段中。
图6是解说混合ARP功能性协同常规ARP功能性来操作的示例操作的流程图600。流程600在框602处开始。
在框602,混合设备的混合ARP单元从该混合设备的常规ARP单元接收ARP请求消息。参照图3的示例,混合设备102的混合ARP单元104可以从该混合设备102的常规ARP单元302接收ARP请求消息。该ARP请求消息可以包括目的地网络设备110的网络层地址。在一些实施例中,混合设备102可以生成(或接收)供传送给目的地网络设备110的帧。常规ARP单元302可以确定与常规ARP单元302相关联的常规ARP高速缓存304不包括与该目的地网络设备110的网络层地址相关联的链路层地址。相应地,常规ARP单元302可以生成包括该目的地网络设备110的网络层地址的ARP请求消息。该流程在框604处继续。
在框604,确定混合ARP高速缓存是否包括与由该ARP请求消息指示的网络层地址相关联的一个或多个条目。响应于从混合设备102的较高协议层(即,常规ARP单元302)接收到该ARP请求消息,混合ARP单元104可以确定混合ARP高速缓存106是否包括与所接收到的ARP请求消息中所指示的网络层地址相关联的一个或多个条目。如果确定混合ARP高速缓存106包括与该网络层地址相关联的一个或多个条目,则流程在框606处继续。否则,如果确定混合ARP高速缓存106不包括与该网络层地址相关联的任何条目,则流程在框608处继续。
在框606,丢弃该ARP请求消息,并且基于混合ARP高速缓存中的信息来为该常规ARP单元生成ARP响应消息。如果确定混合ARP高速缓存106包括与由该ARP请求消息指示的网络层地址相关联的一个或多个条目,则混合ARP单元104可以丢弃(而不传送)接收自常规ARP单元302(例如,较高协议层)的该ARP请求消息。混合ARP单元104可以基于(在混合ARP高速缓存中)所标识出的与该网络层地址相关联的条目来为常规ARP单元302(例如,较高协议层)生成ARP响应消息。例如,如果由该ARP请求消息指示的网络层地址对应于旧式设备,则混合ARP单元104可以从混合ARP高速缓存106标识对应的链路层地址,并且将包括所标识出的链路层地址的ARP响应消息提供给该常规ARP单元302。作为另一示例,如果由该ARP请求消息指示的网络层地址对应于混合设备,则混合ARP单元104可以选择与该混合设备相关联的这多个链路层地址中预定的一个链路层地址并且将该链路层地址提供给该常规ARP单元302。作为另一示例,如果由ARP请求消息指示的网络层地址对应于混合设备,则混合ARP单元104可以选择并提供与该混合设备相关联的、对应于混合设备之间的优选传输路线的链路层地址。作为另一示例,如果由ARP请求消息指示的网络层地址对应于混合设备,则混合ARP单元104可以在ARP响应消息中将与该混合设备相关联的混合联网子层标识符(而不是链路层地址)提供给常规ARP单元302。该流程从框606结束。
在框608,在混合ARP高速缓存中生成具有网络层地址和空链路层地址的条目。例如,如果确定混合ARP高速缓存106不包括与由接收自常规ARP单元302的ARP请求消息指示的网络层地址相关联的任何条目,则混合ARP单元104可以在混合ARP高速缓存106中生成新条目。混合ARP高速缓存106中的该新条目可以包括该ARP请求消息中指示的该网络层地址并且可以包括“空”值(或另一预定值)而不是链路层地址。在一些实施例中,混合ARP单元104可以生成新的ARP请求消息以供传送给与该网络层地址相关联的目的地网络设备110。混合ARP单元104可以丢弃(而不传送)接收自较高协议层(即,常规ARP单元302)的ARP请求消息。在另一实施例中,混合ARP单元104可以将接收自较高协议层(即,常规ARP单元302)的ARP请求消息传送给目的地网络设备110。该流程在框610处继续。
在框610,在混合ARP单元处接收一条或多条ARP响应消息。例如,混合ARP单元104可以从混合设备110接收一条或多条ARP响应消息。在一些实施例中,混合设备110(例如,混合ARP单元112协同收发机单元116)可以经由其每一个网络接口来传送ARP响应消息。每一个接收到的ARP响应消息可以指示混合设备110的网络层地址与不同链路层地址之间的关联性。在一些实施例中,混合ARP单元104可以接收响应于先前传送的ARP请求消息的一条或多条ARP响应消息(如图4中所描述的)。在其他实施例中,混合ARP单元104可以接收一条或多条“未经索求”的ARP响应消息(例如,ARP宣告消息),其指示与混合设备110相关联的链路层地址、网络接口、混合联网子层标识符、和/或网络层地址的变化。注意,在一些实施例中,ARP单元104还可以从通信网络100的旧式设备接收ARP响应消息(例如,未经索求的ARP响应消息或者响应于ARP请求消息的ARP响应消息)。该流程在框612处继续。
在框612,响应于接收到ARP响应消息,确定混合ARP高速缓存是否包括与所接收到的ARP响应消息中指示的网络层地址(“所接收到的网络层地址”)相关联的一个或多个条目。例如,混合ARP单元104可以确定混合ARP高速缓存106是否包括与所接收到的网络层地址相关联的一个或多个条目。作为确定混合ARP高速缓存106是否包括与所接收到的网络层地址相关联的一个或多个条目的一部分,混合ARP单元104还可以确定混合ARP高速缓存106是否包括在与所接收到的网络层地址相关联的链路层地址字段中具有“空”值(或另一预定值)的一个或多个条目。如果确定混合ARP高速缓存106包括与所接收到的ARP响应消息中指示的网络层地址相关联的一个或多个条目,则流程在框614处继续。否则,该流程在框616处继续。
在框614,基于这一条或多条所接收到的ARP响应消息来更新混合ARP高速缓存。例如,如果确定混合ARP高速缓存106包括与所接收到的ARP响应消息中指示的网络层地址相关联的一个或多个条目,则混合ARP单元104可以基于所接收到的ARP响应消息来更新混合ARP高速缓存106。例如,如果混合ARP高速缓存106包括与在ARP响应消息中接收到的网络层地址相关联的“空”链路层地址条目,则混合ARP单元104可以用所接收到的ARP响应消息中指示的链路层地址(或混合联网子层标识符)来覆写/替换掉此“空”值。作为另一示例,所接收到的ARP响应消息可以包括一个或多个新的链路层地址、一个或多个不活跃的链路层地址、替换的混合联网子层地址等。混合ARP单元104可以相应地更新混合ARP高速缓存106以反映在ARP响应消息中接收到的此信息。该流程在框616处继续。
在框616,生成新的ARP响应消息以供传送给该混合设备的常规ARP单元。例如,混合ARP单元104可以生成新的ARP响应消息以传送给混合设备102的常规ARP单元302(即,较高协议层)。在一些实施例中,如果生成了在框610处接收的ARP响应消息的网络设备是混合设备110,则(由混合ARP单元104生成的)该新的ARP响应消息可以包括混合设备110的网络层地址和与混合设备110相关联的混合联网子层标识符。如果在生成该新的ARP响应消息时混合联网子层标识符是未知的,则混合ARP单元104可以在该新的ARP响应消息中插入具有特殊编码的、与混合设备110相关联的任何合适的链路层地址(或另一合适的地址)。该具有特殊编码的链路层地址对于常规ARP单元302而言可以表现为实际的链路层地址。然而,混合ARP单元104可以将该具有特殊编码的链路层地址解读为与混合设备110相关联的混合联网子层标识符为未知的指示。在一些实施例中,(从混合ARP单元104提供给常规ARP单元302的)该新的ARP响应消息可以包括链路层地址,该链路层地址与至关联于该链路层地址的混合设备110的主/优选传输路线相关联。此举可以使要覆写掉在混合ARP单元104处从较高协议层的常规ARP单元302接收的(被调度成要被传送的)帧中的地址的需要最小化。此举还可以使每当从另一混合设备110接收到ARP响应消息(并且更新了混合ARP高速缓存106)时就要生成新的ARP响应消息并将其提供给常规ARP单元302的需要最小化。在一些实施例中,混合ARP单元104可以不生成新的ARP响应消息。取而代之的是,混合ARP单元104可以简单地修改所接收到的(在框610处接收的)ARP响应消息,以使得经修改的ARP响应消息包括混合联网子层标识符(或另一合适的链路层地址)。在新的/经修改的ARP响应消息的链路层地址字段中提供给常规ARP单元302的值可(被混合ARP单元104)用作至混合ARP高速缓存106的链接/指针。该流程从框616结束。
应理解,响应于确定要将帧传送给目的地网络设备(旧式设备或混合设备),常规ARP单元302可以基于常规ARP高速缓存304中的信息来填充该帧中的目的地链路层地址。混合ARP单元104可以接收包括由常规ARP单元302填充的目的地链路层地址的该帧。(由常规ARP单元302填充的)该目的地链路层地址可以是与目的地网络设备相关联的混合联网子层标识符、另一合适的地址/标识符、或指示与该目的地网络设备相关联的链路层地址(或混合联网子层标识符)为未知的特殊编码。如以上参照图4和图5所描述的,混合ARP单元104可以将(由常规ARP单元302填充的)目的地链路层地址用作指向混合ARP高速缓存106的指针,基于混合ARP高速缓存106中的信息来选择传输路线、传送接口、和/或目标目的地链路层地址。混合ARP单元104可以覆写掉该帧中的一个或多个字段(若必要)以反映从混合ARP高速缓存106确定的信息。该帧可以随后从所选择的传送接口并且经由所选择的传输路线来传送。
还应注意,在一些实施例中,混合ARP高速缓存106可以不包括关于在框602处接收自常规ARP单元302的ARP请求消息所指示的网络层地址的条目。在此实施例中,混合ARP单元可以生成(并且向常规ARP单元302传送)包括替代的链路层地址的ARP响应消息。此替代的链路层地址可以是关于链路层地址的特殊编码,并且(对于常规ARP单元302而言)可以表现为与由ARP请求消息指示的网络层地址相关联的实际链路层地址。然而,此特殊编码的存在可以向混合ARP单元104指示与该网络层地址相关联的混合联网子层标识符(或链路层地址)是未知的。响应于从混合ARP单元104接收到此ARP响应消息,常规ARP单元302可以更新传统的ARP高速缓存304,在旨在送往目的地网络设备的帧的链路层地址字段中填充该替代的链路层地址,并且向混合联网子层(例如,混合ARP单元104)提供该帧以供传输。另外,在混合ARP单元104向常规ARP单元302提供了包括该替代的链路层地址(例如,特殊编码)的ARP响应消息之后,混合ARP单元104可以生成并向目的地网络设备传送一条或多条ARP请求消息,接收一条或多条ARP响应消息(和/或拓扑消息),并且基于所接收到的消息来填充混合ARP高速缓存106,如以上所描述的。混合ARP单元104可以向或者可以不向常规ARP单元传送新的ARP响应消息以反映接收自目的地网络设备110的地址信息。还应当注意,在一些实施例中,混合ARP单元104可以(从常规ARP单元302)接收包括并非是混合ARP高速缓存106的一部分的网络层地址的ARP请求消息。在此实施例中,混合ARP单元104可以在混合ARP高速缓存106中创建条目,该条目包括该网络层地址和关于链路层地址的“空”值。在混合ARP单元104从目的地网络设备110接收到恰适的ARP响应消息(和/或拓扑消息)之后,混合ARP单元104可以通过用与目的地网络设备110相关联的正确的链路层地址来替换掉该“空”值的方式更新混合ARP高速缓存106。
在一些实施例中,如果混合ARP单元104从另一混合设备110(例如,混合ARP单元112)接收到ARP请求消息,则混合ARP单元104可以向混合设备110传送一条或多条ARP响应消息和/或拓扑消息。混合ARP单元104可以不将所接收到的ARP请求消息传送给与较高协议层相关联的常规ARP单元302。替换地,混合ARP单元104可以将所接收到的ARP请求消息转发给常规ARP单元302,修改由常规ARP单元302生成的ARP响应消息(若需要),并且将经修改的ARP响应消息提供给混合设备110。此外,如果混合ARP单元104(例如,基于所接收到的ARP响应消息和/或所接收到的拓扑消息)确定与混合设备110相关联的链路层地址(或者混合联网子层标识符)已被更新,则混合ARP单元104可以将无偿的/未经索求的ARP宣告消息传送给常规ARP单元302以使常规ARP单元302改变常规ARP高速缓存304中的地址关联性。
应理解,图1-6是旨在帮助理解诸实施例的示例,并且不应被用来限定实施例或限定权利要求的范围。诸实施例可执行附加操作、执行较少操作、以不同次序执行操作、并行地执行操作、以及以不同方式执行一些操作。在一些实施例中,混合ARP高速缓存106可以包括有限数目的条目。因此,合适的机制可被用来从混合ARP高速缓存106移除一个或多个条目以便为新条目和新地址映射腾出空间。在一个实施例中,老化过程可被用来标识应当从混合ARP高速缓存106删除哪些条目。例如,混合ARP单元104可以响应于接收到确认混合ARP高速缓存106中的条目的有效性的ARP响应消息而确定不要删除该条目(例如,通过置位与该条目相关联的标志位)。作为另一示例,混合ARP单元104可以响应于接收到确认混合ARP高速缓存106中的条目的有效性的拓扑消息而确定不要删除该条目。作为另一示例,如果混合ARP高速缓存106中的一个或多个条目近期未曾被用于填充所传送的帧中的目的地链路层地址,则可使该一个或多个条目超龄(例如,从混合ARP高速缓存106中移除)。在此示例中,混合ARP高速缓存106中的每个条目可以与时间戳相关联,每当该条目被使用时该时间戳可被更新。如果与条目相关联的时间戳期满或者大于预定的老化阈值时间,则可以丢弃该条目。另外,如果与混合设备110相关联的条目之一已老化,则可以从混合ARP高速缓存106移除与该混合设备110相关联的所有条目以避免关于混合设备110的信息有偏。此举可以使由于关于与混合设备110相关联的网络接口的信息不完整而导致对目的地链路层地址作出不良选择的可能性最小化。在另一实施例中,混合ARP单元104可以周期性地向混合ARP高速缓存106中的每个网络层地址传送ARP请求消息,并且可以基于所接收到的ARP响应消息来更新混合ARP高速缓存106中的条目以确保混合ARP高速缓存106中的信息是当前的。在另一实施例中,混合ARP单元104可以窥探/检查所接收到的帧中的源网络层地址和源链路层地址字段以确定混合ARP高速缓存106中对应条目是否是有效的。如果混合ARP高速缓存106中的条目与从所接收到的帧确定的源网络层地址和源链路层地址不一致,则可以从混合ARP高速缓存106删除这些条目。
在一些实施例中,混合ARP单元104可以使用拓扑消息来确定应当从混合ARP高速缓存106移除哪些条目。例如,如果所接收到的拓扑消息包括网络层地址和所有相关联的链路层地址的列表(和/或与混合联网子层相关联的标识符),则混合ARP单元104可以更新混合ARP高速缓存106以与所接收到的拓扑消息中的信息一致。混合ARP高速缓存106中与所接收到的拓扑消息不一致的条目可从混合ARP高速缓存106中被移除。在一些实施例中,所接收到的拓扑消息可以包括与混合设备110相关联的所有链路层地址的列表,但是可以不包括与混合设备110相关联的网络层地址。在此实施例中,混合ARP单元104可以确定在混合ARP高速缓存106中是否存在具有与所接收到的拓扑消息中的链路层地址相匹配的链路层地址的至少一个条目。若是,则混合ARP单元104可以使用所接收到的拓扑消息中的信息以及从混合ARP高速缓存106确定的网络层地址的知识来更新混合ARP高速缓存106。
在一些实施例中,当混合设备102首次加入通信网络时,混合ARP单元104可以在接收ARP响应消息之前接收与通信网络100中的一个或多个混合设备(或设备接口)相关联的拓扑消息。在另一实施例中,混合ARP单元104可以在接收拓扑消息之前接收ARP响应消息。无论接收消息的次序如何,混合ARP单元104均可使用从所有接收到的消息确定的信息来填充/修剪混合ARP高速缓存106。未在消息中接收到的信息可在混合ARP高速缓存106中被暂时标记为“未知”。例如,如果(在混合ARP单元104处接收到的)拓扑消息不包括与传送该拓扑消息的混合设备110相关联的网络层地址,则混合ARP单元104可以基于在该拓扑消息中接收到的其他信息(例如,这一个或多个链路层地址)来在混合ARP高速缓存106中创建一个或多个条目并且可以将网络层地址字段标记为“未知”。当混合ARP单元104接收到具有缺失信息的ARP响应消息(或另一拓扑消息)时,混合ARP单元104可以定位混合ARP高速缓存106中的一个或多个匹配条目并且可以用在ARP响应消息中接收到的恰适的网络层地址来填充那些条目。
在一些实施例中,混合设备110(例如,混合ARP单元112)可以传送ARP“取消关联”消息以指示混合设备110的链路层地址之一(与底层网络接口相关联)是无效的。例如,如果与混合设备110相关联的网络接口被禁用、或者如果与混合设备110相关联的网络层地址(以及混合联网子层)已改变并且不再有效,则可以传送ARP“取消关联”消息。响应于接收到ARP“取消关联”消息,混合设备102(例如,混合ARP单元104)可以标识混合ARP高速缓存106中与该ARP“取消关联”消息中所指示的被取消的链路层地址和/或被取消的网络层地址相对应的一个或多个条目。混合ARP单元104可以从混合ARP高速缓存106移除所标识出的一个或多个条目。各种技术可被用于指示ARP宣告消息是否为ARP“取消关联”消息。在一个示例中,可以在ARP宣告消息的字段中传送预定值以将该ARP宣告消息指定为ARP“取消关联”消息。作为另一示例,预定编码可被应用于ARP宣告消息以指示该ARP宣告消息是ARP“取消关联”消息。作为另一示例,可以使用与传统ARP宣告消息的消息格式不同的消息格式来传送ARP“取消关联”消息。作为另一示例,预定编码可被应用于ARP宣告消息的字段子集以指示该ARP宣告消息是ARP“取消关联”消息。例如,ARP宣告消息中的链路层地址字段中的“群/多播”位或“本地管辖地址”位可被设置为“1”以将该消息指定为ARP“取消关联”消息。
在一些实施例中,混合设备102和110(例如,混合ARP单元104和112)可以不使用拓扑消息来填充其各自的混合ARP高速缓存106和114。取而代之的是,混合ARP单元104和112可以使用常规ARP规程和常规ARP消息来填充其各自的混合ARP高速缓存106和114并且指示网络层地址与链路层地址关联性。在此实施例中,如果混合ARP单元104从另一混合ARP单元112接收到ARP请求消息,则混合ARP单元104可以用多条唯一性ARP响应消息来作出响应——对于混合设备102的每个网络接口使用一条唯一性ARP响应消息(即,对于与混合设备102相关联的每个链路层地址使用一条唯一性ARP响应消息)。该多条ARP响应消息的组合可以指示混合设备102的网络层地址与链路层地址之间的完整的一对多关联性。接收到这些ARP响应消息的其他混合设备可以填充其各自的混合ARP高速缓存,如以上参照图1-6所描述的。如果混合ARP单元112确定在ARP响应消息中接收到的网络层地址已存在于混合ARP高速缓存114中,但是在该ARP响应消息中接收到的链路层地址不存在于混合ARP高速缓存114中,则混合ARP单元112可以向混合ARP高速缓存114添加新的条目以反映在ARP响应消息中接收到的网络层地址与链路层地址之间的关联性。
应当理解,除了本文中描述的操作之外,如果混合设备102的网络层与链路层关联性发生改变,则混合设备102的混合ARP单元104还可以传送未经索求的ARP宣告消息以通知其他混合设备110。例如,如果混合设备102的先前被禁用的网络接口被启用,则混合ARP单元104可以传送未经索求的ARP宣告消息以使其他混合设备110更新其各自的混合ARP高速缓存。在一些实施例中,如果通信网络100中的所有网络设备均是混合设备,则混合ARP单元104可以传送多播ARP宣告消息以宣告网络层地址与链路层地址关联性。否则,混合ARP单元104可以传送单播消息以选择性地通知一个或多个网络设备(例如,仅通知混合设备)。在一些实施例中,混合ARP单元104可以仅在与混合设备102相关联的主传输路线存在修改的情况下才向旧式设备传送单播ARP宣告消息。注意,在一些实施例中,混合ARP单元104可以基于从网络设备接收到的消息的类型、从网络设备接收到的一条或多条消息中的通知、从网络设备接收到的消息的数目等来确定该网络设备是旧式设备还是混合设备。例如,如果混合ARP单元104在预定的时间区间内从同一个网络设备接收到多条ARP宣告消息,则混合ARP单元104可以确定该网络设备是混合设备。作为另一示例,如果混合ARP单元104从网络设备接收到拓扑消息,则混合ARP单元104可以确定该网络设备是混合设备。
在一些实施例中,混合ARP单元104可以通过检查所接收到的ARP宣告消息、ARP响应消息、和/或拓扑消息来推断网络拓扑和/或可用的传输路线。例如,源网络设备可以在ARP宣告消息中填充源链路层地址。如果源链路层地址与源网络设备的传送接口相关联,则响应于在混合设备102的接收接口处接收到ARP宣告消息,混合ARP单元104可以推断在混合设备102的该接收接口与源网络设备的(对应于该源链路层地址的)该传送接口之间存在有效传输路线。相应地,混合ARP单元104可以在网络拓扑数据库、传输路线数据库、和/或混合ARP高速缓存106中存储该信息。在一些实施例中,混合ARP单元104还可以计算与该传输路线相关联的抵达时间以推断该传输路线的质量。
在一些实施例中,混合设备102的混合ARP单元104可以采用拓扑消息来维护(混合ARP高速缓存106中的)与混合设备相关联的条目。混合ARP单元104可以采用ARP消息来维护(混合ARP高速缓存106中的)与旧式(非混合)设备相关联的条目。为此目的,拓扑消息可被配置成除了与正在传送该拓扑消息的混合设备110相关联的链路层地址之外还包括网络层地址。在此实施例中,为了更新(混合ARP高速缓存106中的)与混合设备110相关联的条目,混合设备102的混合ARP单元104可以(向混合设备110)传送对拓扑消息的请求,而不是传送ARP请求消息。替换地,混合ARP单元104可以向所有混合设备传送多播消息,该多播消息请求与这些混合设备中对应的各个混合设备相关联的拓扑消息。在一些实施例中,每个混合设备可以(在拓扑消息中)传送与该混合设备相关联的链路层地址的完整列表、网络层地址、和/或混合联网子层标识符。每个混合设备还可以传送包括与优选传输路线相关联的网络层地址和链路层地址的ARP宣告消息。这可以确保:A)通信网络的旧式设备利用优选传输路线来与混合设备通信,以及B)其他混合设备知晓传送了拓扑消息的混合设备的网络层地址、混合联网子层标识符、和所有链路层地址。
在一些实施例中,如果混合设备102的混合ARP单元104接收到ARP请求消息,则混合ARP单元104可以用ARP宣告消息来作出响应,该ARP宣告消息包括与混合设备102和传送了该ARP请求消息的网络设备之间的优选传输路线相关联的链路层地址。在另一实施例中,如果混合ARP单元104接收到ARP请求消息,则混合ARP单元104可以首先确定是混合设备还是旧式设备传送了该ARP请求消息。如果混合设备传送了该ARP请求消息,则混合ARP单元104可以用ARP响应消息来作出响应,并且可以在ARP响应消息的链路层地址字段中提供混合联网子层标识符。在其他实施例中,如果混合设备传送了该ARP请求消息,则混合ARP单元104可以通过在多个网络接口中对应的各个网络接口上传送多条ARP响应消息来作出响应。在其他实施例中,如果混合设备传送了该ARP请求消息,则混合ARP单元104可以通过传送包括与混合设备102相关联的所有链路层地址的列表的拓扑消息来作出响应。在一些实施例中,如果旧式设备传送了该ARP请求消息,则混合ARP单元104可以用ARP响应消息来作出响应,并且可以提供与混合设备102的优选传输路线相关联的链路层地址。
在一些实施例中,混合ARP单元104可以(经由收发机单元108)从混合设备102的每个网络接口传送ARP请求消息和未经索求的ARP宣告消息。然而,在一些实施例中,混合ARP单元104可以知道目的地网络设备在通信网络100内的位置(例如,应当从哪个传送接口传送ARP请求消息)。相应地,混合ARP单元104可以仅经由“已知的”传送接口来传送ARP请求消息。在一些实施例中,混合ARP单元104可以(例如,基于网络拓扑和/或路线度量信息来)确定应当经由混合设备102的网络接口子集来传送未经索求的ARP宣告消息。相应地,混合ARP单元104可以传送未经索求的ARP宣告消息,这些ARP宣告消息可以经由所标识出的网络接口子集来传送。在一些实施例中,响应于接收到ARP请求消息,混合ARP单元104可以经由接收到ARP请求消息的同一个网络接口来传送ARP响应消息。在一些实施例中,基于网络拓扑信息,混合ARP单元104可以经由与接收到ARP请求消息的网络接口不同的一个或多个网络接口来传送ARP响应消息。
最后,应当注意,尽管附图描述了基于路线度量信息、传输路线信息、地址关联性信息等来选择传输路线,但是诸实施例并不被如此限定。在其他实施例中,可以基于帧的类型或者(被调度成供传送的)帧所属的话务类来选择传输路线。帧所属的话务类可以基于与帧相关联的优先级、协议类型(UDP或TCP)、和/或指示共同的话务流或推断递送紧急程度的层3指示符来确定。例如,可以选择第一传输路线(例如,优选或最佳的可用传输路线)和对应的第一传送接口以在一对设备之间传送高优先级帧。可以选择第二传输路线(例如,未必是最佳的可用传输路线)和对应的第二传送接口以在相同的一对设备之间传送较低优先级帧,从而较低优先级帧的传输不与高优先级帧的传输竞争(或不干扰高优先级帧的传输)。在一些实施例中,在基于先前选择的传输路线来确定用于帧的传输路线时,该先前选择的传输路线可能是基于帧的类型或者先前传送的帧所属的话务类来确定的。例如,响应于确定要传送与预定义优先级水平相关联的帧,可以选择先前用于传送具有相同的预定义优先级水平的帧的传输路线。
如本领域技术人员将领会的,本发明主题内容的各方面可体现为系统、方法或计算机程序产品。相应地,本发明主题内容的各方面可采取全硬件实施例、软件实施例(包括固件、驻留软件、微代码等)、或组合了软件与硬件方面的实施例的形式,其在本文可被统称为“电路”、“模块”或“系统”。此外,本发明主题内容的各方面可采取体现在其上含有计算机可读程序代码的一个或多个计算机可读介质中的计算机程序产品的形式。
可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于:电子、磁性、光学、电磁、红外、或半导体系统、装置或设备,或者前述的任何合适组合。计算机可读存储介质的更为具体的示例(非穷尽性列表)可包括以下各项:具有一条或多条导线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式压缩碟只读存储器(CD-ROM)、光存储设备、磁存储设备,或者前述的任何合适组合。在本文档的上下文中,计算机可读存储介质可以是能包含或存储供指令执行系统、装置或设备使用或者结合其使用的程序的任何有形介质。
计算机可读信号介质可包括例如在基带中或者作为载波一部分的其中含有计算机可读程序代码的所传播数据信号。此类所传播信号可采取各种形式中的任一种,包括但不限于电磁信号、光学信号、或其任何合适的组合。计算机可读信号介质可以为不是计算机可读存储介质的任何计算机可读介质,它能传达、传播或传输供指令执行系统、装置或设备使用或者结合其使用的程序。
包含在计算机可读介质上的程序代码可以使用任何恰适的介质来传送,包括但不限于无线、有线、光纤缆线、RF等,或者前述的任何合适的组合。
用于实施本发明主题内容的各方面的操作的计算机程序代码可以用一种或多种编程语言的任何组合来编写,包括面向对象编程语言(诸如Java、Smalltalk、C++等)以及常规过程编程语言(诸如“C”编程语言或类似编程语言)。程序代码可完全在用户计算机上、部分在用户计算机上、作为独立软件包、部分在用户计算机上且部分在远程计算机上、或者完全在远程计算机或服务器上执行。在后一情境中,远程计算机可通过任何类型的网络连接至用户计算机,包括局域网(LAN)或广域网(WAN),或者可进行与外部计算机的连接(例如,使用因特网服务提供商通过因特网来连接)。
本发明主题内容的各方面是参照根据本发明主题内容的各实施例的方法、装置(系统)和计算机程序产品的流程图解说和/或框图来描述的。将理解,这些流程图解说和/或框图中的每个框、以及这些流程图解说和/或框图中的框的组合可以通过计算机程序指令来实现。这些计算机程序指令可被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以用以制造机器,从而经由计算机或其他可编程数据处理装置的处理器执行的这些指令构建用于实现这些流程图和/或框图的一个或多个框中所指定的功能/动作的装置。
这些计算机程序指令也可存储在计算机可读介质中,其可以指导计算机、其他可编程数据处理装置或其他设备以特定方式起作用,从而存储在该计算机可读介质中的指令制造出包括实现这些流程图和/或框图的一个或多个框中所指定的功能/动作的指令的制品。
计算机程序指令也可被加载到计算机、其他可编程数据处理装置或其他设备上以使得在该计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生由计算机实现的过程,从而在该计算机或其他可编程装置上执行的这些指令提供用于实现这些流程图和/或框图的一个或多个框中所指定的功能/动作的过程。
图7是包括用于混合通信网络的混合ARP机制的电子设备700的一个实施例的框图。在一些实现中,电子设备700可以是台式计算机、膝上型计算机、平板计算机、移动电话、智能电器、电力线通信设备、游戏控制台、网络桥接设备、接入点、或包括被配置成跨多个通信网络进行通信的混合通信单元的其他电子系统中的一者。电子设备700包括处理器单元702(可能包括多个处理器、多个核、多个节点、和/或实现多线程处理等等)。电子设备700包括存储器单元706。存储器单元706可以是系统存储器(例如,高速缓存、SRAM、DRAM、零电容器RAM、双晶体管RAM、eDRAM、EDO RAM、DDR RAM、EEPROM、NRAM、RRAM、SONOS、PRAM等中的一者或多者)或者上面已经描述的机器可读介质的可能实现中的任何一者或多者。电子设备700还包括总线710(例如,PCI、ISA、PCI-Express、NuBus、AHB、AXI等)、以及网络接口704,该网络接口704包括无线网络接口(例如,WLAN接口、蓝牙接口、WiMAX接口、接口、无线USB接口等)和有线网络接口(例如,PLC接口、以太网接口等)中的至少一者。在一些实现中,电子设备700可包括多个网络接口——每一个网络接口将电子设备700耦合至不同的通信网络。例如,电子设备700可包括将电子设备700分别与电力线通信网络、以太网、和无线局域网耦合的PLC接口、以太网接口、和WLAN接口。
电子设备700还包括通信单元708。通信单元708包括混合ARP单元712和混合ARP高速缓存714。在一些实施例中,通信单元708可以执行用于管理单个网络层地址与多个链路层地址之间的一对多关联性的混合ARP功能性。混合ARP单元712可以采用(图2和图4中描述的)单级办法或者(图5中描述的)双级办法来填充和维护混合ARP高速缓存714中的地址关联性信息,并且使用该地址关联性信息来填充被调度成要被传送的帧中的恰适的目的地链路层地址。混合ARP单元712(和混合ARP高速缓存714)可以协同(由较高协议层实现的)常规ARP功能性来操作,如以上参照图3和图6所描述的。
这些功能性中的任一个都可部分地(或完全地)在硬件中和/或在处理器单元702上实现。例如,该功能性可用专用集成电路来实现、在处理器单元702中所实现的逻辑中实现、在外围设备或卡上的协处理器中实现等。此外,诸实现可包括更少的组件或包括图7中未解说的附加组件(例如,视频卡、音频卡、附加网络接口、外围设备等)。处理器单元702、存储器单元706以及网络接口704被耦合至总线710。尽管被解说为耦合至总线710,但是存储器单元706也可耦合至处理器单元702。
尽管各实施例是参考各种实现和利用来描述的,但是将理解,这些实施例是解说性的且本发明主题内容的范围并不限于这些实施例。一般而言,如本文所描述的用于混合通信网络中的地址解析的技术可以用符合任何硬件系统或诸硬件系统的设施来实现。许多变体、修改、添加、和改进都是可能的。
可为本文描述为单个实例的组件、操作、或结构提供复数个实例。最后,各种组件、操作、以及数据存储之间的边界在某种程度上是任意性的,并且在具体解说性配置的上下文中解说了特定操作。其他的功能性分配是已预见的并且可落在本发明主题内容的范围内。一般而言,在示例性配置中呈现为分开的组件的结构和功能性可被实现为组合式结构或组件。类似地,被呈现为单个组件的结构和功能性可被实现为分开的组件。这些以及其他变体、修改、添加及改进可落在本发明主题内容的范围内。

Claims (40)

1.一种方法,包括:
确定消息被调度成从通信网络的第一混合设备传送给所述通信网络的第二混合设备,其中所述第一混合设备和所述第二混合设备各自与多个网络接口相关联;
至少部分地基于与所述第二混合设备相关联的一个或多个地址解析存储条目来确定所述消息的传输路线以及与所述第二混合设备相关联的对应的第一网络接口;
确定与关联于所述第二混合设备的所述第一网络接口相对应的第一链路层地址,其中所述第二混合设备与多个链路层地址相关联,所述多个链路层地址中的每一个与所述多个网络接口中对应的各个网络接口相关联;
生成包括所述第一链路层地址的所述消息;以及
经由所述传输路线来传送所述消息。
2.如权利要求1所述的方法,其特征在于,
所述确定所述传输路线包括:
确定是否要经由所述第一混合设备的所述多个网络接口中的一个或多个网络接口来将所述消息传送给所述第二混合设备;并且
所述确定所述第一链路层地址包括:
确定与所述第一混合设备的所述多个网络接口中藉以将所述消息传送给所述第二混合设备的对应的一个或多个网络接口相关联的一个或多个链路层地址。
3.如权利要求1所述的方法,其特征在于,所述确定所述传输路线是至少部分地基于与所述第二混合设备相关联的所述一个或多个地址解析存储条目来进行的,所述一个或多个地址解析存储条目至少包括与所述消息相关联的话务类。
4.如权利要求1所述的方法,其特征在于,与所述第一混合设备的混合网络层相关联的高速缓存包括所述一个或多个地址解析存储条目,其中所述高速缓存包括所述多个链路层地址中与关联于所述第二混合设备的所述多个网络接口中的至少一个网络接口相对应的至少一个链路层地址、与所述第二混合设备相关联的网络地址、以及与所述第二混合设备相关联的路线信息。
5.如权利要求4所述的方法,其特征在于,与所述第二混合设备相关联的所述路线信息包括:
对于与所述第二混合设备相关联的所述多个网络接口中的一个或多个网络接口,
先前选择的用于在所述第一混合设备与所述第二混合设备的所述网络接口之间传送通信的传输路线,以及
与所述第一混合设备和所述第二混合设备的所述网络接口之间的一个或多个传输路线相关联的路线度量信息。
6.如权利要求1所述的方法,其特征在于,进一步包括:
在所述第一混合设备处从所述第二混合设备接收第二消息,其中所述第二消息指示与所述第二混合设备相关联的所述多个网络接口中的至少一个网络接口;以及
更新与所述第二混合设备相关联的所述一个或多个地址解析存储条目以反映与所述第二混合设备相关联的所述多个网络接口中的所述至少一个网络接口。
7.如权利要求6所述的方法,其特征在于,接收自所述第二混合设备的所述第二消息是以下各项中的一者:
地址解析协议(ARP)响应消息,其中所述第二混合设备是响应于来自所述第一混合设备的ARP请求消息而传送了所述第二消息,
ARP宣告消息,或者
拓扑消息,所述拓扑消息指示与所述第二混合设备相关联的所述多个网络接口和所述对应的多个链路层地址。
8.如权利要求1所述的方法,其特征在于,与关联于所述第二混合设备的所述第一网络接口相对应的所述第一链路层地址是与所述第二混合设备的混合网络层相关联的标识符。
9.如权利要求1所述的方法,其特征在于,所述确定所述消息被调度成从所述通信网络的所述第一混合设备传送给所述通信网络的所述第二混合设备包括:
确定所述第一混合设备是否包括与所述第二混合设备相关联的所述一个或多个地址解析存储条目;
响应于确定所述第一混合设备包括与所述第二混合设备相关联的所述一个或多个地址解析存储条目,
至少部分地基于与所述第二混合设备相关联的所述一个或多个地址解析存储条目来进行所述确定所述消息的传输路线和与所述第二混合设备相关联的所述对应的第一网络接口;以及
响应于确定所述第一混合设备不包括与所述第二混合设备相关联的所述一个或多个地址解析存储条目,
从所述第一混合设备向所述第二混合设备传送对与所述第二混合设备相关联的所述多个链路层地址中的至少一个链路层地址的请求;以及
响应于所述传送对与所述第二混合设备相关联的所述多个链路层地址中的至少一个链路层地址的请求,至少部分地基于从所述第二混合设备接收的一个或多个响应来创建与所述第二混合设备相关联的所述一个或多个地址解析存储条目。
10.如权利要求1所述的方法,其特征在于,所述确定所述消息的传输路线和与所述第二混合设备相关联的所述对应的第一网络接口以及所述确定与关联于所述第二混合设备的所述第一网络接口相对应的所述第一链路层地址包括:
在所述第一混合设备的第一处理级处,至少部分地基于与所述第一处理级相关联的第一数据库来生成包括所述第二混合设备的所述第一链路层地址的所述消息;
在所述第一混合设备的第二处理级处,至少部分地基于与所述第二处理级相关联的第二数据库和由所述第一处理级确定的所述第一链路层地址来确定用于将所述消息传送给所述第二混合设备的所述传输路线和对应的目的地链路层地址;
在所述第一混合设备的所述第二处理级处,确定由所述第一处理级确定的所述第一链路层地址是否不同于由所述第二处理级确定的所述目的地链路层地址;
在所述第一混合设备的所述第二处理级处,响应于确定由所述第一处理级确定的所述第一链路层地址不同于由所述第二处理级确定的所述目的地链路层地址,用所述目的地链路层地址来替换掉所述消息中的所述第一链路层地址;以及
在所述第一混合设备的所述第二处理级处,响应于确定由所述第一处理级确定的所述第一链路层地址与由所述第二处理级确定的所述目的地链路层地址相同或者响应于所述用所述目的地链路层地址来替换掉所述消息中的所述第一链路层地址,将所述消息传送给所述第二混合设备。
11.如权利要求10所述的方法,其特征在于,
与所述第一处理级相关联的所述第一数据库包括所述第二混合设备的网络地址和与所述第二混合设备相关联的所述第一链路层地址,
其中与所述第二处理级相关联的所述第二数据库包括多个地址解析存储条目,以使得所述多个地址解析存储条目中的每一个地址解析存储条目包括所述第二混合设备的所述网络地址和与所述第二混合设备相关联的所述多个链路层地址中的一个链路层地址,并且
其中所述第一数据库中的所述第一链路层地址是指向所述第二数据库的所述多个地址解析存储条目的指针。
12.如权利要求11所述的方法,其特征在于,所述第一数据库中的所述第一链路层地址是与所述第一混合设备和所述第二混合设备之间的优选传输路线相关联的链路层地址,或者是与所述第二混合设备的混合网络层相关联的标识符。
13.如权利要求11所述的方法,其特征在于,对于与所述第二混合设备相关联的所述多个链路层地址中的一个或多个链路层地址,所述第二数据库包括:
先前选择的用于在所述第一混合设备与关联于所述第二混合设备的所述链路层地址之间传送通信的传输路线,以及
与所述第一混合设备和关联于所述第二混合设备的所述网络接口之间的一个或多个传输路线相关联的路线度量信息。
14.如权利要求10所述的方法,其特征在于,所述第一混合设备的混合网络层包括所述第一处理级和所述第二处理级。
15.如权利要求10所述的方法,其特征在于,所述目的地链路层地址是以下各项中的一者:
所述多个链路层地址中与所述第二混合设备的所述多个网络接口中的、所述第二混合设备被调度成藉以接收所述消息的接收网络接口相关联的第二链路层地址,或者
所述多个链路层地址中与所述多个链路层地址中关联于所述接收网络接口的所述第二链路层地址不同的第三链路层地址,或者
与所述第二混合设备的混合网络层相关联的标识符。
16.如权利要求1所述的方法,其特征在于,进一步包括:响应于以下操作中的一者而至少删除与所述第二混合设备相关联的所述一个或多个地址解析存储条目中的第一地址解析存储条目:
确定在预定的时间区间期间没有从所述第二混合设备接收到通信;
确定与所述第二混合设备相关联的所述一个或多个地址解析存储条目中的第一地址解析存储条目在预定的老化时间区间期间未曾被用于将至少一条消息传送给所述第二混合设备;或者
确定指派给与所述第二混合设备相关联的所述一个或多个地址解析存储条目中的所述第一地址解析存储条目的时间戳已期满。
17.如权利要求1所述的方法,其特征在于,进一步包括:
从所述第二混合设备接收指示与所述第二混合设备相关联的所述第一链路层地址为无效的取消关联消息;以及
响应于所述从所述第二混合设备接收到指示与所述第二混合设备相关联的所述第一链路层地址为无效的所述取消关联消息,更新与所述第二混合设备相关联的所述一个或多个地址解析存储条目。
18.一种方法,包括:
在通信网络的第一混合设备的混合网络层处,检测来自所述第一混合设备的较高协议层的请求消息,其中所述请求消息包括对与所述通信网络的第二混合设备相关联的链路层地址的请求;
在所述第一混合设备的所述混合网络层处,确定所述第一混合设备的所述混合网络层是否包括与所述第二混合设备相关联的所述链路层地址;
响应于确定所述第一混合设备的所述混合网络层包括与所述第二混合设备相关联的所述链路层地址,
从与所述第一混合设备的所述混合网络层相关联的第一数据库确定与所述第二混合设备相关联的标识符地址;
向所述第一混合设备的所述较高协议层提供第一响应消息,所述第一响应消息至少包括与所述第二混合设备相关联的所述标识符地址;以及
在所述混合网络层处丢弃所述请求消息而不将所述请求消息传送给所述第二混合设备;以及
响应于确定所述第一混合设备的所述混合网络层不包括与所述第二混合设备相关联的所述链路层地址,
将所述请求消息传送给所述第二混合设备;
在所述第一混合设备的所述混合网络层处,响应于所述将所述请求消息传送给所述第二混合设备而从所述第二混合设备接收一条或多条响应消息;
基于从所述第二混合设备接收的所述一条或多条响应消息来更新所述第一数据库中与所述第二混合设备相关联的一个或多个地址解析存储条目;以及
为所述第一混合设备的所述较高协议层生成所述第一响应消息,其中所述第一响应消息至少包括与所述第二混合设备相关联的所述标识符地址。
19.如权利要求18所述的方法,其特征在于,响应于确定所述第一混合设备的所述混合网络层不包括与所述第二混合设备相关联的所述链路层地址,所述将所述请求消息传送给所述第二混合设备包括以下操作中的一者:
修改从所述较高协议层接收的所述请求消息并将经修改的请求消息传送给所述第二混合设备;或者
丢弃从所述较高协议层接收的所述请求消息并将新的请求消息传送给所述第二混合设备。
20.如权利要求18所述的方法,其特征在于,与所述第二混合设备相关联的所述标识符地址包括以下各项中的一者:
与所述第一混合设备和所述第二混合设备之间的优选传输路线相关联的链路层地址,
与所述第二混合设备的所述混合网络层相关联的标识符;或者
与所述第二混合设备的多个链路层地址中的一个链路层地址相关联的链路层地址。
21.如权利要求18所述的方法,其特征在于,响应于确定所述第一混合设备的所述混合网络层不包括与所述第二混合设备相关联的所述链路层地址,
所述将所述请求消息传送给所述第二混合设备进一步包括:
在所述第一数据库中生成地址解析存储条目,所述地址解析存储条目包括与所述第二混合设备相关联的网络层地址和与所述第二混合设备相关联的空链路层地址;并且
所述基于从所述第二混合设备接收的所述一条或多条响应消息来更新所述第一数据库中与所述第二混合设备相关联的所述一个或多个地址解析存储条目包括:
从接收自所述第二混合设备的所述一条或多条响应消息确定与所述第二混合设备相关联的所述链路层地址;以及
用与所述第二混合设备相关联的所述链路层地址来替换掉所述空链路层地址。
22.如权利要求18所述的方法,其特征在于,进一步包括:
从所述第一混合设备的所述较高协议层接收被调度成供传送给所述第二混合设备的消息,其中所述消息包括与所述第二混合设备相关联的所述标识符地址;
在所述第一混合设备的所述混合网络层处,至少部分地基于所述第一数据库中与所述第二混合设备相关联的所述一个或多个地址解析存储条目并且基于在来自所述较高协议层的所述消息中接收到的所述标识符地址来确定用于将所述消息传送给所述第二混合设备的传输路线和对应的目的地链路层地址;
确定由所述较高协议层确定的所述标识符地址是否不同于由所述混合网络层确定的所述目的地链路层地址;
响应于确定由所述较高协议层确定的所述标识符地址不同于由所述混合网络层确定的所述目的地链路层地址,用所述目的地链路层地址来替换掉所述标识符地址;以及
响应于确定由所述较高协议层确定的所述标识符地址匹配由所述混合网络层确定的所述目的地链路层地址或者响应于所述用所述目的地链路层地址来替换掉所述标识符地址,将所述消息传送给所述第二混合设备。
23.一种混合网络设备,包括:
处理器单元;以及
与所述处理器单元耦合的混合地址解析协议(ARP)单元,所述混合ARP单元能操作用于:
确定消息被调度成从所述混合网络设备传送给通信网络的第二混合网络设备,其中所述混合网络设备和所述第二混合网络设备各自与多个网络接口相关联;
至少部分地基于与所述第二混合网络设备相关联的一个或多个地址解析存储条目来确定所述消息的传输路线和与所述第二混合网络设备相关联的对应的第一网络接口;
确定与关联于所述第二混合网络设备的所述第一网络接口相对应的第一链路层地址,其中所述第二混合网络设备与多个链路层地址相关联,所述多个链路层地址中的每一个与所述多个网络接口中对应的各个网络接口相关联;
生成包括所述第一链路层地址的所述消息;以及
经由所述传输路线来传送所述消息。
24.如权利要求23所述的混合网络设备,其特征在于,
与所述混合网络设备的混合网络层相关联的高速缓存包括所述一个或多个地址解析存储条目,
其中所述高速缓存包括所述多个链路层地址中与关联于所述第二混合网络设备的所述多个网络接口中的至少一个网络接口相对应的至少一个链路层地址、与所述第二混合网络设备相关联的网络地址、以及与所述第二混合网络设备相关联的路线信息,并且
其中对于与所述第二混合网络设备相关联的所述多个网络接口中的一个或多个网络接口,与所述第二混合网络设备相关联的所述路线信息包括:
先前选择的用于在所述混合网络设备与所述第二混合网络设备的所述网络接口之间传送通信的传输路线,以及
与所述混合网络设备和所述第二混合网络设备的所述网络接口之间的一个或多个传输路线相关联的路线度量信息。
25.如权利要求23所述的混合网络设备,其特征在于,所述混合ARP单元进一步能操作用于:
从所述第二混合网络设备接收第二消息,其中所述第二消息指示与所述第二混合网络设备相关联的所述多个网络接口中的至少一个网络接口;以及
更新与所述第二混合网络设备相关联的所述一个或多个地址解析存储条目以反映与所述第二混合网络设备相关联的所述多个网络接口中的所述至少一个网络接口。
26.如权利要求23所述的混合网络设备,其特征在于,与关联于所述第二混合网络设备的所述第一网络接口相对应的所述第一链路层地址是与所述第二混合网络设备的混合网络层相关联的标识符。
27.如权利要求23所述的混合网络设备,其特征在于,能操作用于确定所述消息的所述传输路线和与所述第二混合网络设备相关联的所述对应的第一网络接口的所述混合ARP单元以及能操作用于确定与关联于所述第二混合网络设备的所述第一网络接口相对应的所述第一链路层地址的所述混合ARP单元包括:
所述混合ARP单元的第一处理级,所述第一处理级能操作用于:
至少部分地基于与所述第一处理级相关联的第一数据库来生成包括所述第二混合网络设备的所述第一链路层地址的所述消息;
所述混合ARP单元的第二处理级,所述第二处理级能操作用于:
至少部分地基于与所述第二处理级相关联的第二数据库和由所述第一处理级确定的所述第一链路层地址来确定用于将所述消息传送给所述第二混合网络设备的所述传输路线和对应的目的地链路层地址;
确定由所述第一处理级确定的所述第一链路层地址是否不同于由所述第二处理级确定的所述目的地链路层地址;
响应于所述混合ARP单元的所述第二处理级确定由所述混合ARP单元的所述第一处理级确定的所述第一链路层地址不同于由所述混合ARP单元的所述第二处理级确定的所述目的地链路层地址,用所述目的地链路层地址来替换掉所述消息中的所述第一链路层地址;以及
响应于所述混合ARP单元的所述第二处理级确定由所述混合ARP单元的所述第一处理级确定的所述第一链路层地址与由所述混合ARP单元的所述第二处理级确定的所述目的地链路层地址相同或者响应于用所述目的地链路层地址来替换掉所述消息中的所述第一链路层地址,将所述消息传送给所述第二混合网络设备。
28.如权利要求27所述的混合网络设备,其特征在于,
与所述混合ARP单元的所述第一处理级相关联的所述第一数据库包括所述第二混合网络设备的网络地址和与所述第二混合网络设备相关联的所述第一链路层地址,
其中与所述混合ARP单元的所述第二处理级相关联的所述第二数据库包括多个地址解析存储条目,以使得所述多个地址解析存储条目中的每一个地址解析存储条目包括所述第二混合网络设备的所述网络地址和与所述第二混合网络设备相关联的所述多个链路层地址中的一个链路层地址,并且
其中所述第一数据库中的所述多个链路层地址中的第一链路层地址是指向所述第二数据库的所述多个地址解析存储条目的指针。
29.如权利要求28所述的混合网络设备,其特征在于,所述第一数据库中的所述第一链路层地址是与所述混合网络设备和所述第二混合网络设备之间的优选传输路线相关联的链路层地址,或者是与所述第二混合网络设备的混合网络层相关联的标识符。
30.如权利要求28所述的混合网络设备,其特征在于,对于与所述第二混合网络设备相关联的所述多个链路层地址中的一个或多个链路层地址,所述第二数据库包括:
先前选择的用于在所述混合网络设备与关联于所述第二混合网络设备的所述链路层地址之间传送通信的传输路线;以及
与所述混合网络设备和关联于所述第二混合网络设备的所述网络接口之间的一个或多个传输路线相关联的路线度量信息。
31.如权利要求23所述的混合网络设备,其特征在于,所述混合ARP单元能进一步操作用于:
从所述第二混合网络设备接收指示与所述第二混合网络设备相关联的所述第一链路层地址为无效的取消关联消息;以及
响应于所述混合ARP单元从所述第二混合网络设备接收到指示与所述第二混合网络设备相关联的所述第一链路层地址为无效的所述取消关联消息,更新与所述第二混合网络设备相关联的所述一个或多个地址解析存储条目。
32.一种混合网络设备,包括:
处理器单元;以及
所述混合网络设备的混合网络层的混合地址解析协议(ARP)单元,其中所述混合ARP单元与所述处理器单元耦合,其中所述混合ARP单元能操作用于:
检测来自所述混合网络设备的较高协议层的请求消息,其中所述请求消息包括对与通信网络的第二混合网络设备相关联的链路层地址的请求;
确定所述混合网络设备的所述混合网络层是否包括与所述第二混合网络设备相关联的所述链路层地址;
响应于所述混合ARP单元确定所述混合网络设备的所述混合网络层包括与所述第二混合网络设备相关联的所述链路层地址,
从与所述混合网络设备的所述混合网络层相关联的第一数据库确定与所述第二混合网络设备相关联的标识符地址;
向所述混合网络设备的所述较高协议层提供第一响应消息,所述第一响应消息至少包括与所述第二混合网络设备相关联的所述标识符地址;以及
在所述混合网络层处丢弃所述请求消息而不将所述请求消息传送给所述第二混合网络设备;以及
响应于所述混合ARP单元确定所述混合网络设备的所述混合网络层不包括与所述第二混合网络设备相关联的所述链路层地址,
将所述请求消息传送给所述第二混合网络设备;
响应于所述混合ARP单元将所述请求消息传送给所述第二混合网络设备,从所述第二混合网络设备接收一条或多条响应消息;
基于从所述第二混合网络设备接收的所述一条或多条响应消息来更新所述第一数据库中与所述第二混合网络设备相关联的一个或多个地址解析存储条目;以及
为所述混合网络设备的所述较高协议层生成所述第一响应消息,其中所述第一响应消息至少包括与所述第二混合网络设备相关联的所述标识符地址。
33.如权利要求32所述的混合网络设备,其特征在于,响应于所述混合ARP单元确定所述混合网络设备的所述混合网络层不包括与所述第二混合网络设备相关联的所述链路层地址,
所述混合ARP单元能操作用于将所述请求消息传送给所述第二混合网络设备进一步包括所述混合ARP单元能操作用于:
在所述第一数据库中生成地址解析存储条目,所述地址解析存储条目包括与所述第二混合网络设备相关联的网络层地址和与所述第二混合网络设备相关联的空链路层地址;并且
所述混合ARP单元能操作用于基于从所述第二混合网络设备接收的所述一条或多条响应消息来更新所述第一数据库中与所述第二混合网络设备相关联的所述一个或多个地址解析存储条目包括所述混合ARP单元能操作用于:
从接收自所述第二混合网络设备的所述一条或多条响应消息确定与所述第二混合网络设备相关联的所述链路层地址;以及
用与所述第二混合网络设备相关联的所述链路层地址来替换掉所述空链路层地址。
34.如权利要求32所述的混合网络设备,其特征在于,所述混合ARP单元能进一步操作用于:
从所述混合网络设备的所述较高协议层接收被调度成供传送给所述第二混合网络设备的消息,其中所述消息包括与所述第二混合网络设备相关联的所述标识符地址;
至少部分地基于所述第一数据库中与所述第二混合网络设备相关联的所述一个或多个地址解析存储条目并且基于在来自所述较高协议层的所述消息中接收到的所述标识符地址来确定用于将所述消息传送给所述第二混合网络设备的传输路线和对应的目的地链路层地址;
确定由所述较高协议层确定的所述标识符地址是否不同于由所述混合ARP单元确定的所述目的地链路层地址;
响应于所述混合ARP单元确定由所述较高协议层确定的所述标识符地址不同于由所述混合ARP单元确定的所述目的地链路层地址,用所述目的地链路层地址来替换掉所述标识符地址;以及
响应于所述混合ARP单元确定由所述较高协议层确定的所述标识符地址匹配由所述混合ARP单元确定的所述目的地链路层地址或者响应于所述混合ARP单元用所述目的地链路层地址来替换掉所述标识符地址,将所述消息传送给所述第二混合网络设备。
35.一种或多种其中存储有指令的机器可读存储介质,所述指令在被一个或多个处理器执行时使所述一个或多个处理器执行以下操作,包括:
确定消息被调度成从通信网络的第一混合设备传送给所述通信网络的第二混合设备,其中所述第一混合设备和所述第二混合设备各自与多个网络接口相关联;
至少部分地基于与所述第二混合设备相关联的一个或多个地址解析存储条目来确定所述消息的传输路线和与所述第二混合设备相关联的对应的第一网络接口;
确定与关联于所述第二混合设备的所述第一网络接口相对应的第一链路层地址,其中所述第二混合设备与多个链路层地址相关联,所述多个链路层地址中的每一个链路层地址与所述多个网络接口中对应的各个网络接口相关联;
生成包括所述第一链路层地址的所述消息;
经由所述传输路线来传送所述消息。
36.如权利要求35所述的机器可读存储介质,其特征在于,所述确定所述消息的所述传输路线和与所述第二混合设备相关联的所述对应的第一网络接口的操作以及所述确定与关联于所述第二混合设备的所述第一网络接口相对应的所述第一链路层地址的操作包括:
在所述第一混合设备的第一处理级处至少部分地基于与所述第一处理级相关联的第一数据库来生成包括所述第二混合设备的所述第一链路层地址的所述消息;
在所述第一混合设备的第二处理级处,至少部分地基于与所述第二处理级相关联的第二数据库和由所述第一处理级确定的所述第一链路层地址来确定用于将所述消息传送给所述第二混合设备的所述传输路线和对应的目的地链路层地址;
在所述第一混合设备的所述第二处理级处,确定由所述第一处理级确定的所述第一链路层地址是否不同于由所述第二处理级确定的所述目的地链路层地址;
在所述第一混合设备的所述第二处理级处,响应于确定由所述第一处理级确定的所述第一链路层地址不同于由所述第二处理级确定的所述目的地链路层地址,用所述目的地链路层地址来替换掉所述消息中的所述第一链路层地址;以及
在所述第一混合设备的所述第二处理级处,响应于确定由所述第一处理级确定的所述第一链路层地址与由所述第二处理级确定的所述目的地链路层地址相同或者响应于所述用所述目的地链路层地址来替换掉所述消息中的所述第一链路层地址的操作,将所述消息传送给所述第二混合设备。
37.如权利要求36所述的机器可读存储介质,其特征在于:
与所述第一处理级相关联的所述第一数据库包括所述第二混合设备的网络地址和与所述第二混合设备相关联的所述第一链路层地址,
其中与所述第二处理级相关联的所述第二数据库包括多个地址解析存储条目,以使得所述多个地址解析存储条目中的每一个地址解析存储条目包括所述第二混合设备的所述网络地址和与所述第二混合设备相关联的所述多个链路层地址中的一个链路层地址,并且
其中所述第一数据库中的所述第一链路层地址是指向所述第二数据库的所述多个地址解析存储条目的指针。
38.一种或多种其中存储有指令的机器可读存储介质,所述指令在被一个或多个处理器执行时使所述一个或多个处理器执行以下操作,包括:
在通信网络的第一混合设备的混合网络层处,检测来自所述第一混合设备的较高协议层的请求消息,其中所述请求消息包括对与所述通信网络的第二混合设备相关联的链路层地址的请求;
在所述第一混合设备的所述混合网络层处,确定所述第一混合设备的所述混合网络层是否包括与所述第二混合设备相关联的所述链路层地址;
响应于确定所述第一混合设备的所述混合网络层包括与所述第二混合设备相关联的所述链路层地址,
从与所述第一混合设备的所述混合网络层相关联的第一数据库确定与所述第二混合设备相关联的标识符地址;
向所述第一混合设备的所述较高协议层提供第一响应消息,所述第一响应消息至少包括与所述第二混合设备相关联的所述标识符地址;以及
在所述混合网络层处丢弃所述请求消息而不将所述请求消息传送给所述第二混合设备;以及
响应于确定所述第一混合设备的所述混合网络层不包括与所述第二混合设备相关联的所述链路层地址,
将所述请求消息传送给所述第二混合设备;
在所述第一混合设备的所述混合网络层处,响应于所述将所述请求消息传送给所述第二混合设备的操作而从所述第二混合设备接收一条或多条响应消息;
基于从所述第二混合设备接收的所述一条或多条响应消息来更新所述第一数据库中与所述第二混合设备相关联的一个或多个地址解析存储条目;以及
为所述第一混合设备的所述较高协议层生成所述第一响应消息,其中所述第一响应消息至少包括与所述第二混合设备相关联的所述标识符地址。
39.如权利要求38所述的机器可读存储介质,其特征在于,响应于确定所述第一混合设备的所述混合网络层不包括与所述第二混合设备相关联的所述链路层地址,
所述将所述请求消息传送给所述第二混合设备的操作进一步包括:
在所述第一数据库中生成地址解析存储条目,所述地址解析存储条目包括与所述第二混合设备相关联的网络层地址和与所述第二混合设备相关联的空链路层地址;以及
所述基于从所述第二混合设备接收的所述一条或多条响应消息来更新所述第一数据库中与所述第二混合设备相关联的所述一个或多个地址解析存储条目的操作包括:
从接收自所述第二混合设备的所述一条或多条响应消息确定与所述第二混合设备相关联的所述链路层地址;以及
用与所述第二混合设备相关联的所述链路层地址来替换掉所述空链路层地址。
40.如权利要求38所述的机器可读存储介质,其特征在于,所述操作进一步包括:
从所述第一混合设备的所述较高协议层接收被调度成供传送给所述第二混合设备的消息,其中所述消息包括与所述第二混合设备相关联的所述标识符地址;
在所述第一混合设备的所述混合网络层处至少部分地基于所述第一数据库中与所述第二混合设备相关联的所述一个或多个地址解析存储条目并且基于在来自所述较高协议层的所述消息中接收到的所述标识符地址来确定用于将所述消息传送给所述第二混合设备的传输路线和对应的目的地链路层地址;
确定由所述较高协议层确定的所述标识符地址是否不同于由所述混合网络层确定的所述目的地链路层地址;
响应于确定由所述较高协议层确定的所述标识符地址不同于由所述混合网络层确定的所述目的地链路层地址,用所述目的地链路层地址来替换掉所述标识符地址;以及
响应于确定由所述较高协议层确定的所述标识符地址匹配由所述混合网络层确定的所述目的地链路层地址或者响应于所述用所述目的地链路层地址来替换掉所述标识符地址的操作,将所述消息传送给所述第二混合设备。
CN201380040138.8A 2012-07-31 2013-07-29 用于混合通信网络的地址解析机制 Expired - Fee Related CN104509074B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/563,284 2012-07-31
US13/563,284 US8995443B2 (en) 2012-07-31 2012-07-31 Address resolution mechanism for hybrid communication networks
PCT/US2013/052560 WO2014065914A2 (en) 2012-07-31 2013-07-29 Address resolution mechanism for hybrid communication networks

Publications (2)

Publication Number Publication Date
CN104509074A true CN104509074A (zh) 2015-04-08
CN104509074B CN104509074B (zh) 2018-02-06

Family

ID=50025438

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380040138.8A Expired - Fee Related CN104509074B (zh) 2012-07-31 2013-07-29 用于混合通信网络的地址解析机制

Country Status (5)

Country Link
US (1) US8995443B2 (zh)
EP (1) EP2880961A2 (zh)
JP (1) JP6312673B2 (zh)
CN (1) CN104509074B (zh)
WO (1) WO2014065914A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710555A (zh) * 2017-10-26 2019-05-03 三星电子株式会社 用于执行地址解析协议的从设备及其操作方法
TWI727268B (zh) * 2019-02-25 2021-05-11 新加坡商鴻運科股份有限公司 用於實體鏈接分析的接入裝置及其方法
CN113784422A (zh) * 2020-06-10 2021-12-10 瑞昱半导体股份有限公司 具有功率管理机制的蓝牙网状网络系统及其联机方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8995443B2 (en) 2012-07-31 2015-03-31 Qualcomm Incorporated Address resolution mechanism for hybrid communication networks
US10187474B2 (en) * 2012-08-08 2019-01-22 Samsung Electronics Co., Ltd. Method and device for resource sharing between devices
US9136984B2 (en) 2013-03-20 2015-09-15 Google Inc. Multi-listener wireless medium access method
US9742622B2 (en) * 2014-02-20 2017-08-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Extensible interoperability of network devices
US10721206B2 (en) * 2015-02-27 2020-07-21 Arista Networks, Inc. System and method of persistent address resolution synchronization
US10721538B2 (en) * 2015-03-08 2020-07-21 Lg Electronics Inc. Apparatus and method for transmitting and receiving broadcast signal
US10516578B2 (en) * 2015-03-31 2019-12-24 Micro Focus Llc Inferring a network topology
JP7335767B2 (ja) 2019-09-30 2023-08-30 株式会社Subaru 整流装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208811A (en) * 1989-11-06 1993-05-04 Hitachi, Ltd. Interconnection system and method for heterogeneous networks
US20060274752A1 (en) * 2005-06-06 2006-12-07 Vinit Jain Method and apparatus for managing address resolution protocol data for interfaces connected to different switches
US20110164527A1 (en) * 2008-04-04 2011-07-07 Mishra Rajesh K Enhanced wireless ad hoc communication techniques
US20120089714A1 (en) * 2009-04-26 2012-04-12 Jeffrey Alan Carley Method and apparatus for network address resolution

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6618398B1 (en) 1998-08-06 2003-09-09 Nortel Networks Limited Address resolution for internet protocol sub-networks in asymmetric wireless networks
FI113144B (fi) 2001-07-12 2004-02-27 Nokia Corp Pakettidatapalvelun tarjoaminen langattomassa tietoliikennejärjestelmässä
US7492787B2 (en) * 2002-03-29 2009-02-17 Fujitsu Limited Method, apparatus, and medium for migration across link technologies
US7457255B2 (en) * 2004-06-25 2008-11-25 Apple Inc. Method and apparatus for providing link-local IPv4 addressing across multiple interfaces of a network node
US20080101381A1 (en) 2006-10-25 2008-05-01 Mediatek Inc. Address resolution protocol (arp) cache management methods and devices
CN101674286B (zh) 2008-09-08 2012-12-12 中国科学院声学研究所 一种在单网络接口主机间实现多路径通信的方法
CN101883160B (zh) 2010-07-09 2013-03-20 杭州华三通信技术有限公司 多接口网络设备和多接口网络设备的报文发送方法
US8995443B2 (en) 2012-07-31 2015-03-31 Qualcomm Incorporated Address resolution mechanism for hybrid communication networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208811A (en) * 1989-11-06 1993-05-04 Hitachi, Ltd. Interconnection system and method for heterogeneous networks
US20060274752A1 (en) * 2005-06-06 2006-12-07 Vinit Jain Method and apparatus for managing address resolution protocol data for interfaces connected to different switches
US20110164527A1 (en) * 2008-04-04 2011-07-07 Mishra Rajesh K Enhanced wireless ad hoc communication techniques
US20120089714A1 (en) * 2009-04-26 2012-04-12 Jeffrey Alan Carley Method and apparatus for network address resolution

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
STEFAN AUST ET.AL: ""Enhanced Link-Status Detection for High Speed Link Aggregation in Cognitive Radio Network"", 《IEICE TRANSACTIONS ON FUNDAMENTALS OF ELECTRONICS,COMMUNICATIONS,AND COMPUTER SCIENCES,ENGINEERING SCIENCES SOCIETY》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710555A (zh) * 2017-10-26 2019-05-03 三星电子株式会社 用于执行地址解析协议的从设备及其操作方法
CN109710555B (zh) * 2017-10-26 2023-09-26 三星电子株式会社 用于执行地址解析协议的从设备及其操作方法
TWI727268B (zh) * 2019-02-25 2021-05-11 新加坡商鴻運科股份有限公司 用於實體鏈接分析的接入裝置及其方法
CN113784422A (zh) * 2020-06-10 2021-12-10 瑞昱半导体股份有限公司 具有功率管理机制的蓝牙网状网络系统及其联机方法
CN113784422B (zh) * 2020-06-10 2024-05-14 瑞昱半导体股份有限公司 具有功率管理机制的蓝牙网状网络系统及其联机方法

Also Published As

Publication number Publication date
US8995443B2 (en) 2015-03-31
JP2015529062A (ja) 2015-10-01
US20140036917A1 (en) 2014-02-06
JP6312673B2 (ja) 2018-04-18
WO2014065914A2 (en) 2014-05-01
WO2014065914A3 (en) 2014-08-14
EP2880961A2 (en) 2015-06-10
CN104509074B (zh) 2018-02-06

Similar Documents

Publication Publication Date Title
CN104509074A (zh) 用于混合通信网络的地址解析机制
KR101502263B1 (ko) 하이브리드 통신 네트워크들에 대한 어드레싱 방식
KR101492510B1 (ko) 다중 전달 라우트 패킷 정렬
US9014056B2 (en) Bridging network devices in a hybrid communication network
US8334755B2 (en) Method for recognizing radio frequency identification tag reader and apparatus thereof
CN103348637B (zh) 用于混合通信网络中的帧递送路径选择的方法和装置
JP5628447B2 (ja) アプリケーション識別子の割当
CN109361600B (zh) 一种获取路径标识的方法和设备
US20160344670A1 (en) Forwarding messages in a communication network
US7609705B2 (en) Determination of a plurality of paths before selection of one path of the plurality of paths for transmission of one or more packets
CN105722040B (zh) 一种业务消息的传输方法、装置及系统
CN105450585A (zh) 一种信息传输方法及装置
CN104426816B (zh) 一种虚拟机通信方法及装置
CN111866845B (zh) 数据传输方法、装置、设备及计算机可读存储介质
CN104756465B (zh) 一种路由方法、设备及系统
CN105052207B (zh) 一种信息查询方法、设备及系统
US20130328893A1 (en) Display device, displaying method and computer-readable storage medium
CN103595636A (zh) 维护实体组端点mac地址获取的方法、装置及系统
US9882870B2 (en) System and method for integrated management of terminal information in IPv6 environment
CN107547406B (zh) 分布式evpn网关组网中建立fib表的方法和装置
CN104967967B (zh) 一种多跳发现资源的方法和装置
CN105007610B (zh) 一种多跳发现资源的方法和装置
KR101189805B1 (ko) 무선 주파수 식별 태그 리더의 인식 방법 및 그 장치
CN108901016A (zh) 一种桥接配对方法、终端、系统、终端设备和介质
GB2503572A (en) Method and Apparatus for Controlling Wireless Devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180206

Termination date: 20190729