CN101427525A - 用于邻居缓存表同步的装置和方法 - Google Patents
用于邻居缓存表同步的装置和方法 Download PDFInfo
- Publication number
- CN101427525A CN101427525A CNA2005800162876A CN200580016287A CN101427525A CN 101427525 A CN101427525 A CN 101427525A CN A2005800162876 A CNA2005800162876 A CN A2005800162876A CN 200580016287 A CN200580016287 A CN 200580016287A CN 101427525 A CN101427525 A CN 101427525A
- Authority
- CN
- China
- Prior art keywords
- subclauses
- clauses
- cache table
- address
- neighbor cache
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2041—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种用于同步备份网络设备的邻居缓存表和主网络设备的邻居缓存表的方法和设备。每当在主网络设备中增加或者删除条目时,所述主网络设备就可以向所述备份网络设备发送增加或者删除命令。此外,当新的网络设备加入到链路中成为主设备或者备份设备时,将采用同步请求和同步确认命令,以使所述新网络设备与主网络设备同步。另外,当网络设备成为主设备时,可以发送更新命令,以使得邻居交换设备能够更新其各自的邻居缓存表,且如果需要,重定向到所述网络设备的通信量。
Description
发明领域
本发明涉及计算机网络,并且特别地,涉及一种用于使备份设备中的邻居缓存表和主设备中的邻居缓存表同步的装置和方法。
发明背景
分组转发是将去往远端目的地的分组转发到转发节点,所述转发节点具有到达目的地的路径。在某些情况下,通信量可能是发往转发节点的。例如,所述转发节点可以包括防火墙。但是,所述转发节点的失效可能造成目的地不可达。
为了缓解这个问题,可以使用多个独立设备作为转发节点来进行冗余地服务。因此,如果一个冗余设备失效,则另外一个冗余设备可以替换它。一个冗余设备到另外一个冗余设备的失效倒换(fail-over),可以通过运行高可用性协议来实现。
发明内容
本发明涉及一种用于使备份网络设备的邻居缓存表和主网络设备的邻居缓存表同步的装置和方法。每当在所述主网络设备的邻居缓存表中增加或者删除条目时,所述主网络设备就可以向所述备份网络设备发送增加命令或者删除命令。进一步地,当新的网络设备加入到链路中,从而成为主设备或者备份设备时,可以使用同步请求命令和同步确认命令来使得所述新的网络设备和所述主网络设备同步。此外,当网络设备成为主设备时,所述网络设备可以发送更新命令,以使得邻居交换设备能够更新其邻居缓存表,如果需要,还将重定向到所述网络设备的通信量。
附图说明
参考以下附图来说明本发明非限制和非穷举的实施例,其中:
图1图示了一种系统的实施例的框图;
图2示出了对于图1系统的处理过程的实施例流程图;
图3图示了用于为高可用性系统同步邻居缓存表的系统的实施例;以及
图4至5示出了根据本发明的方面,在高可用性系统中的邻居缓存表同步处理过程的实施例流程图。
具体实施方式
本发明不同的实施例将会参考附图来进行详细地描述,其中,在附图中,相同的参考编号代表相同的部分和组件。多种实施例的参考并没有限制本发明的范围,本发明的范围仅由所附的权利要求限制。此外,本说明书中阐述的任何例子并不是为了限制,而仅是为了阐述对于本发明的许多可能的实施例中的某些。
在整个说明书和权利要求书中,除了上下文明确地指出了其它含义外,以下术语都至少表示在此明确关联的含义。以下定义的含义不是为了限制术语,而只是为术语提供说明性的例子。“a”“an”和“the”的含义包括了复数含义,“在......中”的含义包括“在......中”和“在......上”。在此使用的短语“在一个实施例中”虽然可能是指同一个实施例,但并不是必须指同一个实施例。术语“信号”是指至少一种电流,电压,电荷,气温,数据或者其它信号。
图1图示了系统100的实施例的框图。系统100包括外部网络102,其中,外部网络102可以包括局域网,互联网等等。系统100还包括内部网络104,其中,内部网络104可以包括局域网等等。系统100还包括高可用性(HA)系统105,其中,高可用性系统105包括网络设备110和111。网络设备110包括收发器120。网络设备111包括收发器122。进一步地,网络设备110和111可以是路由器、网桥、防火墙、代理服务器、交换机、二层转发节点等设备中的任何一种。网络设备110和111中的每一个被配置为,分别通过使用收发器120和122,来发送和接收分组。而且,尽管没有示出,网络设备110和111都各自包含被配置为执行动作的处理器。
此外,可以配置HA系统105,使得在任何时候,在HA系统105中的网络设备中的一个担当主设备,而在HA系统105中的其它网络设备中的一个或多个被配置为担当备份设备。在一个实施例中,网络设备110被配置为默认主设备,网络设备111被配置为对于所述默认主设备的备份网络设备。在这个实施例中,最初,网络设备110担当主设备。然而,如果在网络设备110中发生失效情况,那么网络设备111可以担当主设备。
高可用性方案可以通过采用高可用性协议来实现。高可用性协议的例子包括虚拟路由冗余协议(VRRP)、热备份路由器协议(HSRP)、IP备份协议(IPSTB),等等,但是并不局限于所述这几个协议。
并且,网络设备110和111可以各自存储邻居缓存表。所述邻居缓存表也可以被称为“地址表”,“桥接表”等等。主网络设备(即,担当主设备的设备)被配置为,部分地基于其邻居缓存表,来转发数据分组。除了采用HA协议外,网络设备110和111还可以采用用于邻居缓存表同步的协议。
在一个实施例中,通过向无关于邻居缓存表同步的现有协议添加新的命令,来使用所述现有协议执行邻居缓存表同步。在其它实施例中,可以采用用于邻居缓存表同步的单独协议。
如果成为主设备的网络设备(110或者111)接收到分组(所述分组和HA协议,邻居缓存表同步协议等等无关),则所述网络设备将部分地基于所述邻居缓存表转发所述分组。如果成为备份设备的网络设备(110或者111)接收到分组(所述分组和HA协议,邻居缓存表同步协议等等无关),在所述设备可以丢弃所述分组。因此,主设备控制分组的转发。如果发生失效倒换,则所述转发的控制将被转移给新的主设备。
图2示出了处理过程200的实施例的流程图。在一个实施例中,处理过程200被系统100采用。处理过程200是用于转发分组的处理过程,其中,所述分组是被发往HA系统的,例如,HA系统105。
在初始块之后,所述处理过程进行到判断块290,在判断块290中,判断网络设备110是否是主设备。如果是主设备,则所述处理过程前进到块292,在块292中,使网络设备110能够转发被发往HA系统的数据分组。
接着,所述处理过程从块292转移到判断块294,在判断块294中,判断网络设备110中的邻居缓存表是否已经改变。如果网络设备110中的邻居缓存表没有改变,则所述处理过程前进到返回块,在所述返回块中执行其它过程。然而,如果网络设备110中的邻居缓存表已经改变,则所述处理过程前进到块298,在块298中,使至少一个备份网络设备中(例如,网络设备111)的邻居缓存表和网络设备110中的邻居缓存表同步。接着,所述处理将从块298转移到所述返回块,在所述返回块中,执行其它的处理过程。
在判断块290,如果网络设备110不是主设备,则所述处理将前进到块296,在块296中,使备份网络设备(例如,网络设备111)能够转发被发往HA系统的要转发的数据分组。接着,所述处理过程将从块296前进到所述返回块,在所述返回块中,执行其它的处理。
图3图示了系统300的实施例,系统300用于为高可用性系统进行邻居缓存表同步。系统300包括这样的组件,例如,交换设备331-334,路由器335-336,主机设备341-344,链路L1-L4,和HA系统305。HA系统305包括网络设备310-311。应理解,系统300可以包括比图3所示的更多的交换设备、主机设备、路由器,和链路。并且,可采用与图3所示拓扑不同的拓扑。在系统300的组件与系统100的组件中,名字相似的组件可以按相似的方式运行,也可以按不同的方式运行。
交换设备331-334可以各自包括分组交换机等等,例如网桥、路由器、二层交换机、三层交换机,等等。路由器335-336可以各自通过采用例如因特网协议(IP)等的协议来发送分组。并且,交换设备331-334中的每一个都和多个链路相连。如果交换设备接收到分组,那么它通过将所述分组转发到另一链路来转发所述分组。所述交换设备中的一个或者多个可以包括邻居缓存表。
在一个实施例中,网络设备310-311中各自包含防火墙。在任何情况下,网络设备310-311中的每一个都和多个链路相连。如果网络设备310-311中的一个接收到要转发的分组,并且所述网络设备是主设备,则所述网络设备通过将所述分组发送到另一链路,来转发所述分组。此外,网络设备310和311各自包括邻居缓存表。
主机设备341-344可以各自是能够在网络上发送和接收分组的任何网络设备。所述设备集合可以包括典型地使用有线通信介质进行连接的设备,例如,个人计算机、多处理器系统、基于微处理器的或者可编程的消费电子产品、网络PC,等等,其中,所述设备被配置为作为网络设备来运行。所述设备集合还可以包括典型地使用无线通信介质进行连接的设备,例如,蜂窝电话、智能电话、寻呼机、无线对讲机、射频(RF)设备、红外(IR)设备、CBs、合并前述设备中的一个或者多个的集成设备,等等,其中,所述设备被配置为网络设备。或者,主机设备341-344可以各自是能够使用有线或者无线通信介质进行连接的任何设备,例如,PDA、POCKET PC、可穿戴计算机,以及被配置为通过有线和/或无线通信介质进行通信的、作为网络设备来运行的、任何其它设备。同样地,网络设备341-344可以各自被配置为网络服务器、缓存服务器、文件服务器、文件存储设备、代理,等等。
在一个实施例中,交换设备334-334是二层交换机,并且网络设备310和311是二层转发节点。交换设备331-331可以各自通过使用其邻居缓存表来执行转发。邻居表中的每一条目都与特定主机相关。所述主机可以是终端主机或者路由器。并且,每一条目包括:指示主机地址的域,指示到达所述主机的链路的域,以及用于进行老化以在到期时丢弃条目的时间域。一旦接收到分组,所述交换设备就向所述邻居缓存表增加条目。所增加的条目包括在地址域中的分组源地址,在链路域中的链路——所述分组是从所述链路收到的,以及时间条目。
并且,一旦收到用来转发的分组,所述交换设备就确定所述分组的目的地址是否被包括在所述邻居缓存表条目中。如果是,则所述交换设备将所述分组转发到在所述条目的链路域指示的链路上。
在一个实施例中,主机设备341可以通过使用互联网协议(IP),向路由器335发送分组。为了达到这个目的,主机设备341可以将所述分组发送给交换设备333。在一个实施例中,根据交换设备333中的邻居缓存表,交换设备333向链路L7发送所述分组。如果所述分组通过链路L7被传送到网络设备310,并且网络设备310是主设备,则网络设备310转发所述分组。在一个实施例中,根据网络设备310的邻居缓存表,网络设备310向链路L3转发所述分组。交换设备331在链路L3上接收所述分组并且转发所述分组。在一个实施例中,根据交换设备331中的邻居缓存表,交换设备331通过链路L1向路由器335转发所述分组。
如果网络设备310是主设备,则网络设备310被配置为使用其邻居缓存表来转发分组。同样地,如果网络设备311是主设备,则网络设备311被配置为使用其邻居缓存表来转发分组。在一个实施例中,为了快速查找所述邻居缓存表是基于哈希的。主设备可以按类似于以上关于交换设备331-334所述的方式,来使用其邻居缓存表。
如果网络设备310不担当主设备,它将丢弃任何发送到网络设备310的用于转发的分组。类似地,如果网络设备311不但当主设备,它将丢弃任何发送到网络设备311的用于转发的分组。
如果网络设备310担当主设备,并且,在网络设备310中出现失效情况,则可以采用高可用性协议,从而使得网络设备311成为主设备,于是,对转发的控制被失效倒换,所述转发是对发往高可用性系统305的、用于转发的分组的转发。在一个实施例中,所述高可用性协议使用被组播到高可用性组播地址的命令。网络设备310和311都是高可用性组播组的成员。
进而,网络设备310和311使用邻居缓存表同步协议。所述同步协议可以包括这样的命令,例如,Add、Delete、Ack、Sync-request、Sync-Ack,和Update。所述同步协议可以使得高可用性系统305能够保持转发信息的同步,从而使得当失效倒换发生时,可以以相当小的延迟并且不中断地转发通信量。如果发生失效倒换,因为邻居缓存表同步,所以可以继续快速且有效地转发通信量。
在一个实施例中,可以通过向组播地址组播所述同步协议的每个命令,来发送所述协议命令,所述组播地址包括网络设备310和311。在一个实施例中,用于所述同步协议的组播地址和用于所述高可用性协议的组播地址相同。在其它实施例中,用于所述同步协议的组播地址和所述高可用性组播地址可以不相同。
并且,如上所述,可以向现有的协议增加同步命令,例如Add、Delete、Ack、Sync-request、Sync-Ack,和Update,而不使用单独的协议。在一个实施例中,命令Add、Delete、Ack、Sync-request、Sync-Ack,和Update是包含在地址解析协议(ARP)中的命令。在这个实施例中,在同步组播组中的设备被编程,以识别并响应包含在ARP命令中的所述命令。然而,本发明并不局限于ARP协议,还可以采用其它的或者新的分组类型。在一个实施例中,这些内藏的ARP命令被组播到如上所述的HA组播组。而后,所述内藏的ARP命令被称为HA ARP命令。
如果所述主设备(例如,网络设备310)向其邻居缓存表增加了新条目,则它将向所述备份设备(例如,网络设备311)发送Add命令。所述Add命令包括在所述新条目的地址域中所指出的地址。在一个实施例中,所述Add命令也包括在所述新条目的链路域中所指出的链路。在另一实施例中,不是将所述链路包含在所述命令中,而是通过使用所述链路传送Add命令来间接指出所述链路。一旦接收到所述Add命令,所述备份设备(例如,网络设备311)就增加新的条目,所述新的条目包括所述命令中所指出的地址,和通过所述Add命令明确指出或者间接指出的链路。在间接指出链路的实施例中,在所述备份设备的邻居缓存表中的新条目的链路域包括链路——所述Add命令是从所述链路接收到的。
在一个实施例中,如果主设备从其邻居缓存表中删除条目,则它将向备份设备发送Delete命令。响应所述Delete命令,所述备份设备从其邻居缓存表中删除相应的条目。在这个实施例中,所述主设备使得其邻居条目老化,而所述备份设备不使得其邻居条目老化。在另一实施例中,没有使用Delete命令,并且备份网络设备使得其本身的邻居缓存表老化。
在一个实施例中,响应接收到正确的Add或者Delete命令,备份设备向主设备发送Ack命令。
在一个实施例中,当网络设备(例如,310或者311)第一次加入高可用性系统305时,它向当前主设备发送Sync-request命令,以请求在所述当前主设备的邻居缓存表中的所有条目。一旦接收到Sync-request命令,所述当前主设备就发送与主设备邻居缓存表中的条目相应的Sync-Ack命令。在一个实施例中,为主设备邻居缓存表的每一条目发送一个Sync-Ack命令。在另一实施例中,具有相同链路域的地址结合成单个Sync-Ack命令。
如同所述Add命令一样,在一个实施例中,在所述Sync-Ack命令中明确指出链路域,而在另一实施例中,通过使用邻居缓存表的链路域中的链路来传送Sync-Ack命令,在Sync-Ack命令中间接指出链路域。
在一个实施例中,当网络设备(例如,310或311)成为主设备时,这是因为失效倒换或者在重启后重新开始成为主设备,一旦成为主设备,所述网络设备就会为邻居缓存表中的每一条目发送Update命令。所述Update命令是这样的分组,所述分组在其源地址域包括来自所述条目的地址域的地址。在一个实施例中,除了连接邻居的链路,所述网络设备在与其连接的每一链路上发送所述Update命令的拷贝。
响应接收到Update命令,邻居交换设备(例如331-334)被配置为更新其邻居缓存表,如果需要,还将重定向到新的主设备的通信量。更确切地,当所述邻居交换设备接收到所述Update命令分组时,将向邻居交换设备的邻居缓存表增加新条目。所述新条目的地址域包括所述Update命令分组的源地址域中的地址。所述新条目的链路域包括通向所述新的主设备的链路。
图4-5示出了处理过程400实施例的流程图,处理过程400可以被用于在例如HA系统的系统中的邻居缓存表同步。在一个实施例中,处理过程400由图3的网络设备310和311中的一个或者两个所使用。
首先在开始块中,网络设备,例如网络设备310或者网络设备311,出现在链路上。接着所述处理过程进行到块450,在块450中,组播HA ARPSync-request命令。随后所述处理过程移到块451,在块451中,创建邻居缓存表。然后,所述处理过程进行到块452,在块451中,响应可以收到的任何Sync-Ack命令,向所述邻居缓存表增加新的条目。
随后,所述处理过程进行到判断块454,其中,判断所述网络设备是否是主设备。如果是主设备,则所述处理过程进行到块458,在块458中,发送HA ARP Update命令。接着,所述处理过程进行到判断块460,在块460中,判断是否已经接收到Sync-Request HA ARP命令。如果已经接收到,则所述处理过程移动到块466,在块466中,为所述邻居缓存表中的每一邻居转发条目,组播HA ARP Sync-Ack命令。
接着,所述处理过程前进到判断块461,其中,判断是否已经接收到用于转发的分组。如果已经接收到,则所述处理过程进行到块468,在块468中,转发所述分组。接着,所述处理过程前进到判断块470,在块470中,判断所述邻居缓存表中的条目是否包括发送所述分组的主机的地址。如果不包括,则所述处理过程移到块472,在块472中,向所述邻居缓存表增加关于所述主机地址的条目。接着,所述处理过程前进到块474,在块474中,向所述主机地址组播HA ARP Add命令。
随后所述处理过程移到判断块462,在块462中,判断所述邻居缓存表中的每个条目的时间域中指示的时间是否到期。如果到期,则所述处理过程移到块476,在块476中,删除到期的条目。接着,所述处理过程进行到块478,在块478中,组播对于所述到期条目的HA ARP Delete命令。然后,所述处理过程前进到判断块463,在块463中,判断所述网络设备是否仍然担当主设备。
如果不是,则所述处理过程移动到判断块455,在块455中,判断是否已经收到HA ARP Add命令。如果已经收到,则所述处理过程前进到块480,在块480中,响应所述HA ARP Add命令,向邻居缓存表增加条目。接着,所述处理过程前进到判断块456,在块456中,判断是否已经收到HA ARP Delete命令。如果收到,则所述处理过程前进到块482,在块482中,响应HA ARP Delete命令,从邻居缓存表中删除条目。随后,所述处理过程移到判断块454。
在判断块454中,如果确定所述网络设备不担当主设备,则所述处理过程前进到判断块455。在判断块455中,如果确定没有收到HA ARP Add命令,则所述处理过程前进到判断块456。在判断块456中,如果确定没有收到HA ARP Delete命令,则所述处理过程移到判断块454。
在判断块470中,如果确定所述邻居缓存表中已经包含所述主机地址,则所述处理过程进行到判断块462。在判断块462中,如果确定所述条目的时间域中的时间没有到期,则所述处理过程前进到判断块463。在判断块463中,如果确定所述网络设备仍然是主设备,则所述处理过程移到判断块460。在判断块460中,如果确定没有收到Sync-Request命令,则所述处理过程前进到判断块461。在判断块461中,如果没有收到与转发相关联的分组,则所述处理过程前进到块462。
应理解,图5所示的判断块460-463的判断顺序是任意的,可以按任意顺序来执行,或者可以同时执行。相似地,应理解,图4所示的判断块455-456的判断顺序也是任意的,可以按任意顺序来执行,或者可以同时执行。图中所示的判断顺序仅仅是为了举例说明,不应理解为限制。
上述说明、举例以及数据提供了对本发明组成部分的产生和使用的描述。由于可以在不脱离本发明的精神和范围条件下可以产生本发明的许多实施例,所以本发明还归于下文所附的权利要求。
Claims (20)
1.一种用于在网络上转发通信量的网络设备,包括:
收发器;以及
处理器,其被配置为执行以下动作,包括:
如果接收到同步请求,则使所述收发器能够发送对于所述同步请求的响应,其中所述响应包括与第一邻居缓存表中的条目相关联的信息;
如果对所述第一邻居缓存表执行删除,则使所述收发器能够向其它网络设备发送有关所述删除的信息,以使所述其它网络设备能够在第二邻居缓存表中反映所述删除;以及
如果向所述第一邻居缓存表增加另一条目,则使所述收发器能够向所述其它网络设备发送有关所述另一条目的信息,以使所述其它邻居设备能够在所述第二邻居缓存表中反映所述另一条目,其中,所述另一条目与主机相关联,并且其中,所述有关所述另一条目的信息是通过与所述主机相关联的链路而被发送的。
2.根据权利要求1的网络设备,其中,所述响应与另一主机相关联,并且其中,所述响应是通过与所述另一主机相关联的另一链路而被发送的。
3.根据权利要求1的网络设备,其中,所述第一邻居缓存表中的每一条目都包括指示条目地址的地址域,并且进一步包括,指示向所述条目地址进行转发将使用的链路的链路域,并且其中,所述处理器被进一步配置为:
使所述收发器能够发送同步请求;
在接收链路接收对所述同步请求的另一响应;以及
基于对所述同步请求的所述另一响应,向所述第一邻居缓存表增加附加条目,从而使得所述附加条目的链路域包含所述接收链路。
4.根据权利要求1的网络设备,其中,所述处理器被进一步配置为:
使得所述收发器能够发送至少一个命令,以使得邻居交换设备能够重定向到所述网络设备的通信量。
5.根据权利要求4的网络设备,其中,在所述第一邻居缓存表中的每一条目都包括指示条目地址的地址域,并且其中,所述处理器被配置为通过这样的方式,使得所述收发器能够发送至少一个命令,以使得所述邻居交换设备能够重定向到所述网络设备的通信量,所述方式为:
为所述第一邻居缓存表中的每一条目发送分组,所述分组包括含有所述条目地址的源地址域。
6.一种用于在网络上转发通信量的方法,包括:
在网络设备中存储第一邻居缓存表;
在备份网络设备中存储第二邻居缓存表,其中,所述备份网络设备与多条链路相连;
在所述网络设备的接收链路接收与主机地址相关联的分组;
判断所述第一邻居缓存表是否包括与所述主机地址相关联的条目;
如果所述第一邻居缓存表不包括所述条目,则从所述接收链路向所述备份网络设备的多条链路中的第一链路,发送增加命令,其中,所述增加命令包括所述主机地址;
在所述多条链路中的第一链路接收所述增加命令;以及
响应所述增加命令,向所述第二邻居缓存表增加新条目。
7.根据权利要求6的方法,其中,在所述第一和第二邻居缓存表中的每一条目包括指示条目地址的地址域,并且进一步包括,指示向所述条目地址进行转发将使用的链路的链路域,其中,所述新条目的地址域包括所述主机地址,并且其中,所述新条目的链路域包括所述第一链路。
8.根据权利要求6的方法,进一步包括:
从所述备份网络设备向所述网络设备发送同步请求;
响应所述同步请求,向所述备份网络设备发送和所述第一邻居缓存表中的每一条目相关联的信息,其中,所述信息包括所述第一邻居缓存表中的每一条目的地址域的条目地址,并且其中,使用包括在这样的条目的链路域中的链路,来将所述条目地址中的每一个都发送到所述备份网络设备,所述这样的条目为所述第一邻居缓存表中的、包括所述条目地址的条目;并且
对于所述信息的每一条目地址:
在所述备份网络设备的多个链路中的一个链路上,接收所述条目地址;并且
响应所述条目地址,向所述第二邻居缓存表增加另一新条目,使得所述另一新条目的地址域包括所述条目地址,并且使得,所述新条目的链路域包括所述备份网络设备的多个链路中的接收所述条目地址的那一个链路。
9.根据权利要求6的方法,进一步包括:
使包含在所述第一邻居缓存表的每一条目中的时间域老化;
对于所述第一邻居缓存表中的每一条目,判断所述条目的时间域是否到期,并且如果到期,则:
从所述第一邻居缓存表中删除所述条目;
从所述网络设备向所述备份网络设备发送删除命令,其中,所述删除命令关联于从所述第一邻居缓存表中删除的条目;并且
响应所述删除命令,在所述第二邻居缓存表中删除另一条目。
10.根据权利要求6的方法,其中,通过向高可用性协议组播地址组播所述增加命令,所述网络设备向所述备份设备发送所述增加命令。
11.根据权利要求6的方法,进一步包括:
对于所述第一邻居缓存表中的每一条目,从所述网络设备发送更新分组,其中,所述更新分组包括源地址域,所述源地址域包含所述条目的条目地址;并且
响应所述更新分组中的至少一个,更新在邻居交换设备中的第三邻居缓存表,以重定向到所述网络设备的通信量。
12.一种在网络上转发通信量的网络设备,包括:
收发器;以及
处理器,其被配置为执行以下操作,包括:
如果所述网络设备担当主设备,则:
接收多个分组,其中,在所述多个分组中所接收的分组是在接收链路上被接收的,并且其中,所述所接收的分组和主机地址相关联;
判断第一邻居缓存表是否包含和所述主机地址相关联的条目;以及
如果所述缓存表不包含所述条目,则使所述收发器能够向备份网络设备发送所述主机地址,以使得所述备份网络设备将第二邻居缓存表与所述第一邻居缓存表同步。
13.根据权利要求12的网络设备,其中,使所述收发器能够向所述备份网络设备发送所述主机地址,是通过所述接收链路实现的。
14.根据权利要求12的网络设备,其中,所述处理器被进一步配置为,使所述收发器发送更新命令,从而使邻居交换设备能够重定向到所述网络设备的通信量。
15.根据权利要求12的网络设备,其中,如果所述网络设备担当主设备,在所述处理器被进一步配置为:
接收同步请求;并且
响应所述同步请求,使所述收发器能够向所述备份网络设备发送和所述第一邻居缓存表的每一条目相关联的信息,其中,所述第一邻居缓存表的每一条目包括,指示条目地址的地址域,并且进一步包括,指示转发所述条目将使用的链路的链路域,所述信息包括在所述第一缓存表中的每一条目的地址域的地址,并且其中,使用包含在这样的条目的链路域中的链路,来将所述条目地址中的每一个都发送到所述备份网络设备,所述这样的条目为所述第一邻居缓存表中的、包含所述条目地址的条目。
16.根据权利要求12的网络设备,其中,所述处理器被进一步配置为:
对于所述第一邻居缓存表中的每一条目,如果从所述第一邻居缓存表删除所述条目,则使所述收发器能够向所述备份网络设备发送删除命令。
17.根据权利要求12的网络设备,其中,如果所述网络设备担当主设备,则所述处理器被进一步配置为控制多个分组的转发,并且其中,如果所述备份网络设备担当主设备,则所述备份网络设备被配置为控制多个分组的转发。
18.根据权利要求12的网络设备,其中,所述第一邻居缓存表中的每一条目包括指示条目地址的地址域,并且进一步包括,指示向所述条目地址进行转发将使用的链路的链路域;并且其中,所述处理器被进一步配置为:
如果所述网络设备担当备份设备,则:
如果在另一接收链路接收到增加命令,则增加条目到所述第一邻居缓存表中,从而使得所增加的条目在其地址域中包括与所述增加命令相关联的另一主机地址,并且在其链路域中包括所述另一接收链路;以及
如果接收到删除命令,则从所述第一邻居缓存表删除与所述删除命令相关联的条目;以及
如果所述网络设备从备份设备变为主设备,则对于所述第一邻居缓存表中的每一条目,发送带有源地址域的分组,所述源地址域包括所述条目的条目地址。
19.一种计算机可读介质,被用于管理同步的指令编码,所述指令包括:
用于为第一网络设备和第二网络设备提供高度可用性的单元;以及
同步单元,用于在所述第一网络设备和所述第二网络设备之间进行邻居缓存表同步信息的通信。
20.根据权利要求19的计算机可读介质,其中,所述同步单元包括增加命令、更新命令、同步请求命令和同步确认命令中的至少一个。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/837559 | 2004-04-30 | ||
US10/837,559 US20050257002A1 (en) | 2004-04-30 | 2004-04-30 | Apparatus and method for neighbor cache table synchronization |
PCT/IB2005/001013 WO2005104650A2 (en) | 2004-04-30 | 2005-04-14 | Apparatus and method for neighbor cache table synchronization |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101427525A true CN101427525A (zh) | 2009-05-06 |
Family
ID=35242090
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800162876A Pending CN101427525A (zh) | 2004-04-30 | 2005-04-14 | 用于邻居缓存表同步的装置和方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US20050257002A1 (zh) |
EP (1) | EP1763762A2 (zh) |
JP (1) | JP2007535852A (zh) |
KR (1) | KR100889881B1 (zh) |
CN (1) | CN101427525A (zh) |
BR (1) | BRPI0510793A (zh) |
RU (1) | RU2006140686A (zh) |
TW (1) | TW200619940A (zh) |
WO (1) | WO2005104650A2 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401755A (zh) * | 2013-08-15 | 2013-11-20 | 山东神思电子技术股份有限公司 | 虚拟通信链路中数据传输的方法 |
CN104011687A (zh) * | 2011-12-16 | 2014-08-27 | 思科技术公司 | 用于网络环境中的服务器的无中断管理的系统和方法 |
CN105991349A (zh) * | 2015-05-25 | 2016-10-05 | 杭州迪普科技有限公司 | 一种邻居表项备份方法及装置 |
US9509614B2 (en) | 2013-06-20 | 2016-11-29 | Cisco Technology, Inc. | Hierarchical load balancing in a network environment |
CN107018170A (zh) * | 2016-10-27 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 一种数据同步方法和设备 |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7586838B2 (en) * | 2004-06-22 | 2009-09-08 | Skylead Assets Limited | Flexible M:N redundancy mechanism for packet inspection engine |
JP4715750B2 (ja) * | 2004-11-04 | 2011-07-06 | パナソニック株式会社 | マルチインタフェース通信装置、端末、および経路切替方法 |
US8036172B1 (en) | 2006-07-17 | 2011-10-11 | Sprint Communications Company L.P. | Stateful home agent recovery protocol (SHARP) |
US8312541B2 (en) * | 2007-07-17 | 2012-11-13 | Cisco Technology, Inc. | Detecting neighbor discovery denial of service attacks against a router |
US8521856B2 (en) * | 2007-12-29 | 2013-08-27 | Cisco Technology, Inc. | Dynamic network configuration |
US8165253B2 (en) * | 2008-08-28 | 2012-04-24 | Agere Systems Inc. | Methods and apparatus for serializer/deserializer transmitter synchronization |
KR101544480B1 (ko) * | 2010-12-24 | 2015-08-13 | 주식회사 케이티 | 복수 개의 프락시 서버를 포함하는 분산 저장 시스템 및 그 오브젝트 관리 방법 및 컴퓨터에 의하여 독출가능한 저장 매체 |
US8743885B2 (en) | 2011-05-03 | 2014-06-03 | Cisco Technology, Inc. | Mobile service routing in a network environment |
CN102694735B (zh) * | 2012-06-11 | 2014-12-10 | 杭州华三通信技术有限公司 | 用于fc交换机重启后同步的方法和装置 |
US9794379B2 (en) | 2013-04-26 | 2017-10-17 | Cisco Technology, Inc. | High-efficiency service chaining with agentless service nodes |
US9191271B2 (en) * | 2013-04-29 | 2015-11-17 | Telefonaktiebolaget L M Ericsson (Publ) | Fast traffic recovery in VRRP based routers |
US9336142B2 (en) * | 2013-11-06 | 2016-05-10 | International Business Machines Corporation | Cache configured to log addresses of high-availability data via a non-blocking channel |
US9374297B2 (en) | 2013-12-17 | 2016-06-21 | Cisco Technology, Inc. | Method for implicit session routing |
US9479443B2 (en) | 2014-05-16 | 2016-10-25 | Cisco Technology, Inc. | System and method for transporting information to services in a network environment |
US9379931B2 (en) | 2014-05-16 | 2016-06-28 | Cisco Technology, Inc. | System and method for transporting information to services in a network environment |
US10417025B2 (en) | 2014-11-18 | 2019-09-17 | Cisco Technology, Inc. | System and method to chain distributed applications in a network environment |
US9660909B2 (en) | 2014-12-11 | 2017-05-23 | Cisco Technology, Inc. | Network service header metadata for load balancing |
USRE48131E1 (en) | 2014-12-11 | 2020-07-28 | Cisco Technology, Inc. | Metadata augmentation in a service function chain |
US9762402B2 (en) | 2015-05-20 | 2017-09-12 | Cisco Technology, Inc. | System and method to facilitate the assignment of service functions for service chains in a network environment |
US11044203B2 (en) | 2016-01-19 | 2021-06-22 | Cisco Technology, Inc. | System and method for hosting mobile packet core and value-added services using a software defined network and service chains |
US10187306B2 (en) | 2016-03-24 | 2019-01-22 | Cisco Technology, Inc. | System and method for improved service chaining |
US10931793B2 (en) | 2016-04-26 | 2021-02-23 | Cisco Technology, Inc. | System and method for automated rendering of service chaining |
US10419550B2 (en) | 2016-07-06 | 2019-09-17 | Cisco Technology, Inc. | Automatic service function validation in a virtual network environment |
US10218616B2 (en) | 2016-07-21 | 2019-02-26 | Cisco Technology, Inc. | Link selection for communication with a service function cluster |
US10320664B2 (en) | 2016-07-21 | 2019-06-11 | Cisco Technology, Inc. | Cloud overlay for operations administration and management |
US10225270B2 (en) | 2016-08-02 | 2019-03-05 | Cisco Technology, Inc. | Steering of cloned traffic in a service function chain |
US10218593B2 (en) | 2016-08-23 | 2019-02-26 | Cisco Technology, Inc. | Identifying sources of packet drops in a service function chain environment |
US10361969B2 (en) | 2016-08-30 | 2019-07-23 | Cisco Technology, Inc. | System and method for managing chained services in a network environment |
US10225187B2 (en) | 2017-03-22 | 2019-03-05 | Cisco Technology, Inc. | System and method for providing a bit indexed service chain |
US10257033B2 (en) | 2017-04-12 | 2019-04-09 | Cisco Technology, Inc. | Virtualized network functions and service chaining in serverless computing infrastructure |
US10884807B2 (en) | 2017-04-12 | 2021-01-05 | Cisco Technology, Inc. | Serverless computing and task scheduling |
US10333855B2 (en) | 2017-04-19 | 2019-06-25 | Cisco Technology, Inc. | Latency reduction in service function paths |
US10554689B2 (en) | 2017-04-28 | 2020-02-04 | Cisco Technology, Inc. | Secure communication session resumption in a service function chain |
US10735275B2 (en) | 2017-06-16 | 2020-08-04 | Cisco Technology, Inc. | Releasing and retaining resources for use in a NFV environment |
US10798187B2 (en) | 2017-06-19 | 2020-10-06 | Cisco Technology, Inc. | Secure service chaining |
US10397271B2 (en) | 2017-07-11 | 2019-08-27 | Cisco Technology, Inc. | Distributed denial of service mitigation for web conferencing |
US10673698B2 (en) | 2017-07-21 | 2020-06-02 | Cisco Technology, Inc. | Service function chain optimization using live testing |
US11063856B2 (en) | 2017-08-24 | 2021-07-13 | Cisco Technology, Inc. | Virtual network function monitoring in a network function virtualization deployment |
US10791065B2 (en) | 2017-09-19 | 2020-09-29 | Cisco Technology, Inc. | Systems and methods for providing container attributes as part of OAM techniques |
US11018981B2 (en) | 2017-10-13 | 2021-05-25 | Cisco Technology, Inc. | System and method for replication container performance and policy validation using real time network traffic |
US10541893B2 (en) | 2017-10-25 | 2020-01-21 | Cisco Technology, Inc. | System and method for obtaining micro-service telemetry data |
US10666612B2 (en) | 2018-06-06 | 2020-05-26 | Cisco Technology, Inc. | Service chains for inter-cloud traffic |
US11706162B2 (en) * | 2019-10-21 | 2023-07-18 | Sap Se | Dynamic, distributed, and scalable single endpoint solution for a service in cloud platform |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6490285B2 (en) * | 1998-08-25 | 2002-12-03 | International Business Machines Corporation | IP multicast interface |
US7007100B1 (en) * | 2000-12-20 | 2006-02-28 | Nortel Networks Limited | Method for synchronization of multicast routing table changes with a plurality of multicast routing protocols |
US7647422B2 (en) * | 2001-11-06 | 2010-01-12 | Enterasys Networks, Inc. | VPN failure recovery |
US7231462B2 (en) * | 2001-12-21 | 2007-06-12 | International Business Machines Corporation | Method of preserving symmetrical routing in a communication system based upon a server farm |
US8001279B2 (en) * | 2001-12-21 | 2011-08-16 | International Business Machines Corporation | Method of synchronizing firewalls in a communication system based upon a server farm |
US7209435B1 (en) * | 2002-04-16 | 2007-04-24 | Foundry Networks, Inc. | System and method for providing network route redundancy across Layer 2 devices |
US7516202B2 (en) * | 2002-07-10 | 2009-04-07 | Nortel Networks Limited | Method and apparatus for defining failover events in a network device |
US7403474B2 (en) * | 2004-01-27 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | Redundant router set up |
-
2004
- 2004-04-30 US US10/837,559 patent/US20050257002A1/en not_active Abandoned
-
2005
- 2005-04-14 RU RU2006140686/09A patent/RU2006140686A/ru not_active Application Discontinuation
- 2005-04-14 EP EP05733756A patent/EP1763762A2/en not_active Withdrawn
- 2005-04-14 WO PCT/IB2005/001013 patent/WO2005104650A2/en active Application Filing
- 2005-04-14 CN CNA2005800162876A patent/CN101427525A/zh active Pending
- 2005-04-14 KR KR1020067025041A patent/KR100889881B1/ko not_active IP Right Cessation
- 2005-04-14 BR BRPI0510793-8A patent/BRPI0510793A/pt not_active IP Right Cessation
- 2005-04-14 JP JP2007510139A patent/JP2007535852A/ja active Pending
- 2005-04-27 TW TW094113356A patent/TW200619940A/zh unknown
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104011687A (zh) * | 2011-12-16 | 2014-08-27 | 思科技术公司 | 用于网络环境中的服务器的无中断管理的系统和方法 |
US9509614B2 (en) | 2013-06-20 | 2016-11-29 | Cisco Technology, Inc. | Hierarchical load balancing in a network environment |
CN103401755A (zh) * | 2013-08-15 | 2013-11-20 | 山东神思电子技术股份有限公司 | 虚拟通信链路中数据传输的方法 |
CN105991349A (zh) * | 2015-05-25 | 2016-10-05 | 杭州迪普科技有限公司 | 一种邻居表项备份方法及装置 |
CN105991349B (zh) * | 2015-05-25 | 2020-04-03 | 杭州迪普科技股份有限公司 | 一种邻居表项备份方法及装置 |
CN107018170A (zh) * | 2016-10-27 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 一种数据同步方法和设备 |
CN107018170B (zh) * | 2016-10-27 | 2020-09-08 | 阿里巴巴集团控股有限公司 | 一种数据同步方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
KR100889881B1 (ko) | 2009-03-24 |
RU2006140686A (ru) | 2008-06-10 |
WO2005104650A2 (en) | 2005-11-10 |
US20050257002A1 (en) | 2005-11-17 |
WO2005104650A3 (en) | 2009-04-16 |
EP1763762A2 (en) | 2007-03-21 |
JP2007535852A (ja) | 2007-12-06 |
TW200619940A (en) | 2006-06-16 |
KR20070027566A (ko) | 2007-03-09 |
BRPI0510793A (pt) | 2007-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101427525A (zh) | 用于邻居缓存表同步的装置和方法 | |
US7885180B2 (en) | Address resolution request mirroring | |
US5724346A (en) | Means for maintaining connectable access points owing to movement of a mobile station between cells in a wireless LAN system | |
US20030056138A1 (en) | Method and system for implementing OSPF redundancy | |
US8401008B2 (en) | Network node, frame transfer program and frame transfer method | |
CN101060533B (zh) | 一种提高vgmp协议可靠性的方法、系统及装置 | |
CN106326308B (zh) | 一种基于sdn的网内重复数据删除方法及系统 | |
CN107077429B (zh) | 数据读取方法、设备和系统 | |
CN100492984C (zh) | 一种通过地址解析协议报文实现数据转发备份的方法 | |
US7948927B2 (en) | Packet relay method and home agent | |
JP3449541B2 (ja) | データパケット転送網とデータパケット転送方法 | |
CN100444586C (zh) | 报文转发方法及设备 | |
CN109511099B (zh) | 一种tau主备切换方法 | |
CN101662351B (zh) | 热备冗余计算机通过冗余网络与其它设备进行通信的方法 | |
CN104539530A (zh) | 一种主备倒换转发不中断的方法 | |
TW200836525A (en) | Selective passive address resolution learning | |
WO2015096432A1 (zh) | 网络拓扑结构的控制方法和系统 | |
JP4923977B2 (ja) | 端末収容装置、パケット経路切替方法及びパケット経路切替プログラム | |
CN113556248A (zh) | 一种集群测控动态部署方法、装置、设备及存储介质 | |
CN102164094B (zh) | 多链路流量重分配的方法和装置 | |
US20070008970A1 (en) | Packet data router apparatus and method | |
TWI640176B (zh) | 通信系統、通信機器及通信目的地的切換方法 | |
JP2008148030A (ja) | 無線通信システムおよびデバイス | |
KR100715678B1 (ko) | 분산 포워딩 구조의 라우터 시스템 및 그의 포워딩제어방법 | |
KR20050052039A (ko) | 빠른 통신 복구가 가능한 이더넷링크보호기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090506 |