CN104348734B - 远程更新路由表 - Google Patents

远程更新路由表 Download PDF

Info

Publication number
CN104348734B
CN104348734B CN201410370235.XA CN201410370235A CN104348734B CN 104348734 B CN104348734 B CN 104348734B CN 201410370235 A CN201410370235 A CN 201410370235A CN 104348734 B CN104348734 B CN 104348734B
Authority
CN
China
Prior art keywords
instruction
network equipment
server apparatus
data flow
equipment
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.)
Active
Application number
CN201410370235.XA
Other languages
English (en)
Other versions
CN104348734A (zh
Inventor
B·里杰斯曼
U·夏尔马
P·加尼森
S·拉马穆尔蒂
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.)
Peribit Networks Inc
Original Assignee
Peribit Networks 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 Peribit Networks Inc filed Critical Peribit Networks Inc
Publication of CN104348734A publication Critical patent/CN104348734A/zh
Application granted granted Critical
Publication of CN104348734B publication Critical patent/CN104348734B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols

Landscapes

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

Abstract

本发明的各实施例涉及远程更新路由表。一种网络设备可以接收用于更新由网络设备实施的数据结构的指令并且基于接收指令来更新数据结构。数据结构可以包括用于指引网络设备向服务器设备提供数据流以用于处理的路由指令。网络设备可以接收去往目的地设备的数据流;基于与数据流关联的网际协议(IP)地址的至少一部分并且基于数据结构确定路由指令;执行路由指令以向服务器设备提供数据流并且使数据流被服务器设备处理以形成经处理的数据流;以及接收经处理的数据流并且朝着目的地设备提供经处理的数据流。

Description

远程更新路由表
技术领域
本发明的各实施例总体上涉及路由表,并且特别地涉及远程更新路由表。
背景技术
网络设备(比如路由器)有时用来处理在用户设备与服务器设备之间的数据流、在用户设备与服务器设备之间路由数据流以及向数据流提供服务。网络设备有时包括定义网络设备将如何处理数据流的路由表。按照及时方式更新路由表可能有困难,由此使数据流被无效率地处理。
发明内容
根据一些可能的实现方式,一种方法可以包括由网络设备接收用于更新由网络设备实施的路由表的指令并且由网络设备基于接收指令来更新路由表。路由表可以包括用于指引网络设备向服务器设备提供数据流以用于处理的路由指令。该方法可以包括由网络设备接收去往目的地设备的数据流;由网络设备基于与数据流关联的网际协议地址的至少一部分并且基于路由表来确定路由指令;由网络设备执行路由指令以向服务器设备提供数据流并且使数据流被服务器设备处理以形成经处理的数据流;以及由网络设备接收经处理的数据流并且朝着目的地设备提供经处理的数据流。
根据一些可能的实现方式,一种网络设备可以接收用于更新由网络设备实施的数据结构的指令并且基于接收指令来更新数据结构。数据结构可以包括用于指引网络设备向服务器设备提供数据流以用于处理的路由指令。网络设备可以接收去往目的地设备的数据流;基于与数据流关联的网际协议地址的至少一部分并且基于数据结构来确定路由指令;执行路由指令以向服务器设备提供数据流并且使数据流被服务器设备处理以形成经处理的数据流;以及接收经处理的数据流并且朝着目的地设备提供经处理的数据流。
根据一些可能的实现方式,一种用于存储指令的计算机可读介质可以包括多个指令,这些指令在由一个或者多个处理器执行时使一个或者多个处理器接收用于更新与由网络设备实施的路由信息库对应的数据结构的指令;基于接收指令来更新数据结构。数据结构可以包括用于指引网络设备向服务器设备提供数据流以用于处理的路由指令。多个指令还可以使一个或者多个处理器接收去往目的地设备的数据流;基于与数据流关联的地址并且基于数据结构来确定路由指令;执行路由指令以向服务器设备提供数据流并且使数据流被服务器设备处理以形成经处理的数据流;以及接收经处理的数据流并且朝着目的地设备提供经处理的数据流。
附图说明
图1图示了这里描述的实现方式的示例概览;
图2图示了其中可以实施这里描述的***和/或方法的示例环境;
图3A图示了网络设备的示例部件;
图3B图示了可以在图2的环境内使用的设备的示例部件;
图4图示了可以由在图2的环境中的一个或者多个设备存储的示例数据结构;
图5图示了用于向网络设备提供更新指令的示例流程图;
图6图示了用于更新由网络设备实施的路由表的示例流程图;并且
图7图示了如这里描述的示例实现方式。
具体实施方式
以下具体描述参照附图。在不同附图中的相同标号可以标识相同或者相似要素。
如这里描述的***和/或方法可以允许服务器设备远程访问和修改与网络设备关联的路由表以便修改网络设备如何路由和/或处理由网络设备接收的数据流。附加地或者备选地,服务器设备可以用来代表网络设备处理数据流。在一些实现方式中,服务器设备可以修改路由表以指引网络设备向服务器设备提供数据流以用于处理。
图1图示了这里描述的实现方式的示例概览。如图1中所示,服务器设备可以向网络设备提供更新指令以使网络设备更新由网络设备实施的路由表。在一些实现方式中,网络设备可以更新路由表,从而使得向服务器设备提供由网络设备接收的数据流以用于处理。例如,服务器设备可以代表网络设备处理数据流以向数据流应用特定服务质量(QoS)处理、应用防火墙服务、提供病毒扫描服务、提供深度分组检查服务和/或提供某个其它服务。
在一些实现方式中,服务器设备可以在服务器设备接收用于代表网络设备处理数据流的指令(例如,来自服务器设备的操作者)时(例如,在虚拟机在服务器设备上被实施并且用来处理数据流时)提供指令。附加地或者备选地,服务器设备可以基于确定用来处理数据流的服务器设备(或者由服务器设备实施的虚拟机)超负荷来提供指令(以例如缓和超负荷的服务器设备或者虚拟机)。附加地或者备选地,服务器设备可以提供用于实施与关联于网络设备的网络服务提供者关联的更新的路由协议的指令。
如图1中所示,网络设备可以从第一用户设备(“UD-1”)接收去往第二用户设备(“UD-2”)的数据流,并且可以向服务器设备提供数据流(例如,基于在路由表中的信息,该信息指引网络设备向服务器设备提供数据流)。在一些实现方式中,服务器设备可以处理数据流以形成经处理的数据流,并且可以向网络设备提供经处理的数据流。网络设备可以基于从服务器设备接收经处理的数据流来向UD-2提供经处理的数据流。作为结果,服务器设备可以远程访问由网络设备实施的路由表,从而使得网络设备可以在服务器设备实施用于代表网络设备处理数据流的服务时向服务器设备路由数据流。
图2是其中可以实施这里描述的***和/或方法的示例环境200的示图。如图2中所示,环境200可以包括用户设备210-1、…、210-A(其中A≥1)、客户端设备220、网络设备230、服务器设备240和网络250。
用户设备210可以包括能够经由网络(比如网络250)通信的设备。例如,用户设备210可以对应于移动通信设备(例如,智能电话或者个人数字助理(PDA))、便携计算机设备(例如,膝上型或者平板计算机)、游戏设备、台式计算机、服务器或者某个其它类型的计算设备。
客户端设备220可以包括计算设备或者计算设备的汇集。在一些实现方式中,客户端设备220可以用来开发和/或在服务器设备240上安装服务(例如,用于指引服务器设备240代表网络设备230处理数据流)。例如,客户端设备220可以向服务器设备240提供服务器设备240可以用来代表网络设备230安装服务并且处理数据流的服务安装指令、应用、虚拟机等。
网络设备230可以包括网络路由设备或者网络路由设备的汇集。在一些实现方式中,网络设备230可以包括路由器、交换机、网关、接入点或者某个其它类型的网络设备。在一些实现方式中,网络设备230可以接收数据流,并且可以根据在由网络设备230实施的路由表中指定的参数处理数据流。在一些实现方式中,路由表可以对应于路由信息库(RIB)或者某个其它类型的路由表。在一些实现方式中,网络设备230可以包括物理路由设备和/或虚拟路由设备(例如,由用于作为物理路由设备工作的服务器存储的虚拟映像)。
服务器设备240可以包括一个或者多个计算设备,比如服务器设备或者服务器设备的汇集。在一些实现方式中,服务器设备240可以基于从服务器设备240的操作者和/或从客户端设备220接收指令来安装服务。例如,服务器设备240可以安装应用、虚拟机等以代表网络设备230向数据流提供服务。
在一些实现方式中,环境200可以包括可以作为数据中心的部分被提供的多个服务器设备240。例如,数据中心可以连接多个服务器设备240,从而使得由多个服务器设备240提供的服务可以被汇聚在一起,并且从而使得由多个服务器设备240提供的服务可以容易地可由网络设备230提供。在一些实现方式中,每个服务器设备240可以实施可以处理由网络设备230接收的数据流的多个虚拟机。
在一些实现方式中,服务器设备240可以向数据流提供主动服务和/或被动服务。例如,在主动服务中,服务器设备240可以修改、丢弃或者***数据流中的分组。例如,在被动服务中,服务器设备240可以监视数据流并且可以不转发数据流。在一些实现方式中,被动服务可以对数据流的副本或者采样操作。
在一些实现方式中,由服务器设备240实施的特定虚拟机可以选择放弃提供用于特定会话或者会话的特定部分的特定服务。例如,假设服务器设备240向HTTP消息提供超文本传送协议(HTTP)服务,并且该服务器设备240可以基于HTTP消息的头部向HTTP消息提供服务。进一步假设由服务器设备240经由会话的第一部分接收HTTP消息的头部,并且由服务器设备240经由会话的第二部分接收HTTP消息的正文。鉴于这些假设,服务器设备240可以选择放弃提供用于会话的第二部分的HTTP服务,因为服务器设备240可以基于HTTP消息的头部向HTTP消息提供HTTP服务并且可以无需HTTP消息的正文。在一些实现方式中,服务选择放弃可以通过减少其中提供服务的会话或者会话部分的数目来引起性能提高。
在一些实现方式中,服务器设备240可以标识用于在每流基础上应用于不同数据流的附加服务。例如,服务器设备240可以向数据流执行深度分组检查服务、可以标识与数据流关联的会话类型(例如,视频类型会话)并且可以基于会话的类型标识将向数据流应用的附加服务。例如,对于视频类型会话,服务器设备240可以提供高速缓存服务,而对于在另一数据流中的另一类型的会话,服务器设备240可以提供某个其它服务(例如,入侵检测服务或者某个其它服务)。作为结果,不同数据流可以被引向由服务器设备240实施的不同虚拟机。
网络250可以包括一个或者多个有线和/或无线网络。例如,网络250可以包括蜂窝网络、公用陆地移动网络(PLMN)、第二代(2G)网络、第三代(3G)网络、***(4G)网络、第五代(5G)网络和/或另一网络。附加地或者备选地,网络250可以包括局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如,公用交换电话网络(PSTN))、自组织网络、被管理的IP网络、虚拟专用网络(VPN)、内联网、因特网、基于光纤的网络和/或这些或者其它类型的网络的组合。
在图2中所示的设备和/或网络的数量不限于所示数量。在实践中,可以有与图2中所示相比附加设备和/或网络;更少的设备和/或网络;不同设备和/或网络;或者被不同布置的设备和/或网络。而且,在一些实现方式中,环境200的设备中的一个或者多个设备可以执行被描述为由环境200的设备中的另外一个或者多个设备执行的一个或者多个功能。环境200的设备可以经由有线连接、无线连接或者有线和无线连接的组合互连。
图3A图示了网络设备230的示例部件。如图3A中所示,网络设备230可以包括路由部件301、输入/输出(I/O)部件302和交换机303。
路由部件301可以包括路由处理器或者路由处理器的汇集。在一些实现方式中,路由部件301可以执行用于网络设备230的高级管理功能。例如,路由部件301可以与连接到网络设备230的网络和/或***通信以交换关于网络拓扑的信息。在一些实现方式中,路由部件301可以基于网络拓扑信息生成路由表、可以基于路由表生成转发表并且可以向I/O部件302发送转发表。在一些实现方式中,路由部件310可以执行用于网络设备230的其它一般控制和监视功能。
I/O部件302可以包括接口设备或者接口设备的汇集。在一些实现方式中,I/O部件302可以连接到路由部件301和交换机303。在一些实现方式中,I/O部件302可以在连接到网络的物理链路上接收分组。每个物理链路可以是许多类型的传送介质(比如光纤或者以太网线缆)之一。可以根据若干协议(比如同步光网络(SONET)标准或者以太网)之一格式化在物理链路上的分组。在一些实现方式中,I/O部件302可以使用转发表以执行用于传入数据流的路由查找。
交换机303可以包括用于有助于在I/O部件302中的两个或者更多个I/O部件之间的通信的一个或者多个切换平面。在一些实现方式中,交换机303可以包括单级或者多级交换机结构。
在一些实现方式中,网络设备230可以包括与图3A中所示相比附加的部件、更少的部件、不同部件或者被不同布置的部件。
图3B图示了可以在图2的环境200内使用的设备300的示例部件。设备300可以对应于用户设备210、客户端设备220、网络设备230和/或服务器设备240。用户设备210、客户端设备220、网络设备230和/或服务器设备240中的每个设备可以包括一个或者多个设备300和/或设备300的一个或者多个部件。
如图3B中所示,设备300可以包括总线305、处理器310、主存储器315、只读存储器(ROM)320、存储设备325、输入设备330、输出设备335和通信接口340。
总线305可以包括允许在设备300的部件之间通信的路径。处理器310可以包括处理器、微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者解释和执行指令的另一类型的处理器。主存储器315可以包括随机存取存储器(RAM)或者存储用于由处理器310执行的信息或者指令的另一类型的动态存储设备。ROM 320可以包括ROM设备或者存储用于由处理器310使用的静态信息或者指令的另一类型的静态存储设备。存储设备325可以包括磁存储介质,比如硬盘驱动或者可拆除存储器(比如闪存)。
输入设备330可以包括允许操作者向设备300输入信息的部件,比如控制按钮、键盘、键区或者另一类型的输入设备。输出设备335可以包括向操作者输出信息的部件,比如发光二极管(LED)、显示器或者另一类型的输出设备。通信接口340可以包括使设备300能够与其它设备或者网络通信的任何收发器式机构。在一些实现方式中,通信接口340可以包括无线接口、有线接口或者无线接口和有线接口的组合。
设备300可以执行如以下具体描述的某些操作。设备300可以响应于处理器310执行在计算机可读介质(比如存储器315)中包含的软件指令来执行这些操作。计算机可读介质可以被定义为非瞬态存储器设备。存储器设备可以包括在单个物理存储设备内的存储器空间或者遍布多个物理存储设备的存储器空间。
可以从另一计算机可读介质(比如存储设备325)或者经由通信接口340从另一设备向主存储器315中读取软件指令。在主存储器315中包含的软件指令可以指引处理器310执行稍后将描述的过程。备选地,可以取代软件指令或者与软件指令组合地使用硬接线电路以实施这里描述的过程。因此,这里描述的实现方式不限于硬件电路和软件的任何具体组合。
在一些实现方式中,设备300可以包括与图3B中所示相比附加的部件、更少的部件、不同部件或者被不同布置的部件。
图4图示了可以由在环境200中的一个或者多个设备(比如网络设备230)存储的示例数据结构400。在一些实现方式中,可以在网络设备230的存储器中存储数据结构400。在一些实现方式中,可以在与网络设备230分离但是可由网络设备230访问的存储器中存储数据结构400。在一些实现方式中,数据结构400可以由在环境200中的某个其它设备(比如服务器设备240)存储。数据结构400的特定实例可以包含与数据结构400的另一实例不同的信息和/或字段。
在一些实现方式中,数据结构400可以存储路由表,该路由表具有用于由网络设备230接收的数据流的路由指令。在一些实现方式中,可以对于经由特定IP地址(或者经由IP地址前缀)被接收的数据流存储路由指令集。在一些实现方式中,可以在网络设备230发现路由路径时、在网络设备230或者服务器设备240的操作者人工更新数据结构400时、在服务器设备240实施用于代表网络设备230处理数据流的服务时、在服务器设备240指令将更新数据结构400时和/或基于某个其它因素更新由数据结构400存储的信息。在一些实现方式中,由数据结构400存储的路由表可以对应于网络设备230的路由信息库(RIB)。
如图4中所示,数据结构400可以包括IP地址字段410、数据流指令字段420和路径属性字段430。
IP地址字段410可以包括标识具有对应的数据流指令集的IP地址的信息。在一些实现方式中,IP地址字段410可以存储IP地址的一部分(例如,前缀,比如IPv4、IPv6、多协议标签切换(MPLS)前缀和/或某个其它类型的前缀)。在一些实现方式中,网络设备230可以基于由IP地址字段410存储的信息标识用于经由IP地址(或者经由具有特定前缀的IP地址)被接收的数据流的特定指令。如这里所用,术语“IP地址”可以是指完整IP地址或者具有特定前缀的IP地址。在一些实现方式中,IP地址字段410可以存储除了IP地址外的地址类型。
数据流指令字段420可以存储确定将如何处理与特定IP地址关联的特定数据流的路由指令。在一些实现方式中,网络设备230可以执行用于与在IP地址字段410中的对应的IP地址关联的数据流的路由指令。例如,网络设备230可以执行用于经由IP地址#1被接收的数据流的指令集#1。在一些实现方式中,由路由指令字段420存储的信息可以指引网络设备230以向数据流应用特定QoS、向特定网络设备230提供数据流、向数据流提供服务(例如,速率限制服务、防火墙服务、分组标记服务等)、向特定服务器设备240提供数据流以用于处理(例如,以允许服务器设备240向数据流应用服务)、重复数据流并且向多个目的地发送数据流的副本、经由多个接口向多个目的地分发数据流和/或执行与数据流有关的某个其它任务。在一些实现方式中,路由指令字段420可以存储标识传输数据流所经由的路由路径(例如,向特定网络设备230、特定服务器设备240或者某个其它设备提供数据流的路径)的信息。
路径属性字段430可以存储用于特定数据流指令集的属性(例如,用于与特定数据流指令集关联的路由路径的属性)。在数据结构400存储用于与特定IP地址关联(或者经由特定IP地址前缀)的数据流的多个数据流指令集的情形中,网络设备230可以基于由路径属性字段430存储的信息确定执行哪个数据流指令集。例如,路径属性字段430可以存储用于与特定数据流指令集关联的路由路径的属性,比如“作为-路径(as-path)”值、管理距离值、度量值和/或允许网络设备230选择执行特定数据流指令集的某个其它类型的属性。例如,网络设备230可以选择具有比另一数据流指令更低的管理距离值的数据流指令。
作为示例,假设数据结构400存储用于经由特定IP地址被接收的数据流的多个路由指令集。也就是说,IP地址字段410存储特定IP地址(例如,IP地址1)的多个实例。另外,假设对应的路由指令集指引网络设备230经由不同路径向特定服务器设备240提供数据流。例如,假设第一路由指令集(例如,路由指令集1)指引网络设备230经由第一路径向特定服务器设备240提供数据流并且第二路由指令集(例如,路由指令集2)指引网络设备230经由第二路径向特定服务器设备240提供数据流。另外,假设路径属性字段430存储用于路由指令集1的管理距离值五和用于路由指令集2的管理距离值十。鉴于这些假设,网络设备230可以选择执行路由指令集1,因为路由指令集1的管理距离值低于路由指令集1的管理距离值,
尽管在数据结构400中以特定格式示出了特定字段,但是在实践中,数据结构400可以包括与图4中所示相比附加的字段、更少的字段、不同字段或者被不同布置的字段。
图5图示了用于向网络设备提供更新指令的示例流程图。在一个实现方式中,过程500可以由服务器设备240的一个或者多个部件执行。在另一实现方式中,过程500的块中的一些或者所有块可以由在环境200中的另一设备(例如,网络设备230)的一个或者多个部件或者包括或者不包括服务器设备240的一组设备执行
如图5中所示,过程500可以包括接收服务安装指令并且安装服务(块510)。例如,服务器设备240可以从服务器设备240的操作者和/或从客户端设备220接收服务安装指令。附加地或者备选地,服务器设备240可以基于标识超负荷的虚拟机(如以下关于块520更具体描述的那样)生成服务安装指令。
在一些实现方式中,服务安装指令可以标识服务,服务器设备240可以向由网络设备230(例如,经由特定IP地址)接收的数据流提供该服务以便代表网络设备230处理数据流。例如,服务安装指令可以标识服务器设备240可以向数据流提供的防火墙服务、压缩服务或者某个其它类型的服务。在一些实现方式中,服务安装指令可以标识接收服务器设备240将提供服务的数据流的特定网络设备230。在一些实现方式中,服务器设备240可以通过安装包括可以用来向数据流提供服务的应用、脚本、虚拟硬件部件等的虚拟机来安装服务。在一些实现方式中,开发方可以代表部署方生成服务安装指令和/或虚拟机。也就是说,部署方可以许可来自开发方的特定服务安装指令和/或特定虚拟机。
过程500也可以包括标识超负荷的虚拟机(块520)。例如,服务器设备240可以基于与虚拟机关联的处理活动数据标识超负荷的虚拟机。在一些实现方式中,服务器设备240可以记下与关联于虚拟机的负荷的测量(例如,处理器使用(比如每秒浮点运算)、随机存取存储器(RAM)使用等)有关的处理信息。在一些实现方式中,服务器设备240可以在负荷的测量超过特定阈值时标识虚拟机超负荷。在一些实现方式中,服务器设备240可以基于标识超负荷的虚拟机来生成用于生成另一虚拟机的服务安装指令(例如,以缓解超负荷的虚拟机)。在一些实现方式中,服务器设备240可以标识欠负荷的虚拟机(例如,具有用于处理数据流的处理容量的虚拟机以缓解超负荷的虚拟机)。
过程500还可以包括接收路由协议更新信息(块530)。例如,服务器设备240可以从服务器设备240的操作者和/或从某个其它来源接收路由协议更新信息。在一些实现方式中,路由协议更新信息可以标识在由网络设备230接收数据时将如何处理数据流。例如,路由协议更新信息可以标识将向数据流应用的QoS参数、用于数据流的路由路径、在路由数据流时使用的特定路由协议类型和/或与将如何处理数据流有关的某个其它类型的信息。
过程500也可以包括生成更新指令(块540)。例如,服务器设备240可以基于一个或者多个更新指令触发(比如安装虚拟机、标识超负荷的虚拟机、接收路由协议更新信息)和/或基于某个其它因素来生成更新指令。在一些实现方式中,更新指令可以指引网络设备230更新由网络设备230实施的路由表(例如,与数据结构400对应的路由表)。例如,网络设备230可以更新用于与特定IP地址关联的数据流的数据流指令集(或者生成用于与特定IP地址关联的数据流的新数据流指令集)。如以上描述的那样,数据流指令集可以标识将如何处理与特定IP地址关联的数据流(例如,可以经由特定服务器设备240向数据流提供的服务、可以向数据流提供的QoS处理等)。在一些实现方式中,更新指令可以标识用于更新路由表的特定网络设备230。在一些实现方式中,服务器设备240可以加密更新指令以防止更新指令的未授权修改。
作为示例,假设服务器设备240如以上关于块510描述的那样安装虚拟机。鉴于这一假设,服务器设备240可以生成更新指令,该更新指令标识与由网络设备230接收的数据流(例如,服务器设备240将使用虚拟机来处理的数据流)关联的特定IP地址。在一些实现方式中,更新指令可以标识服务器设备240的IP地址(或者某个其它标识符)和/或虚拟机的标识符。在一些实现方式中,更新指令可以标识网络设备可以执行的用于与特定IP地址关联的数据流的路由指令。例如,路由指令可以指引网络设备230向数据流提供压缩服务、向服务器设备240提供数据流(例如,基于服务器设备240的IP地址)以用于处理和/或用与虚拟机的标识符关联的标识符标记数据流(例如,从而使得服务器设备240可以标识用来处理数据流的特定虚拟机)。
作为另一示例,假设服务器设备240如以上关于块520描述的那样标识超负荷的虚拟机。另外,假设服务器设备240创建新虚拟机和/或标识欠负荷的虚拟机以缓解超负荷的虚拟机。鉴于这些假设,服务器设备240可以生成更新指令,该更新指令使网络设备230向新虚拟机和/或欠负荷的虚拟机提供数据流以取代向超负荷的虚拟机提供数据流。例如,更新指令可以修改在路由表中的路由指令,从而使得网络设备230标记数据流以用于经由新虚拟机和/或欠负荷的虚拟机处理。
作为另一示例,假设服务器设备240接收标识将如何处理数据流的路由协议更新信息。鉴于这一假设,服务器设备240可以生成更新指令,该更新指令使网络设备230根据路由协议更新处理数据流。例如,更新指令可以使网络设备230向数据流提供特定QoS、向特定服务器设备240和/或特定虚拟机提供数据流、经由特定路由路径朝着目的地提供数据流、经由特定路由协议提供数据流或者以某种其它方式处理数据流。
如以上描述的那样,服务器设备240可以基于触发的组合或者基于单个触发来生成更新指令。也就是说,服务器设备240可以生成更新指令而未安装虚拟机、标识超负荷的虚拟机或者接收路由协议更新信息。附加地或者备选地,服务器设备240可以基于某个其它触发来生成更新指令。
过程500还可以包括向网络设备提供更新指令(块550)。例如,服务器设备240可以标识用于接收更新指令的特定网络设备230(例如,基于与标识特定网络设备230的更新指令关联的信息)。在一些实现方式中,服务器设备240可以经由与特定网络设备230关联的IP地址向特定网络设备230提供更新指令。在一些实现方式中,服务器设备240可以经由安全信道提供更新指令。
过程500也可以包括发布更新指令以用于由网络设备发现(块560)。例如,服务器设备240可以广播更新指令可用的指示。在一些实现方式中,网络设备230可以基于以特定时间间隔(例如,每30分钟、每60分钟或者某个其它时间间隔)查询服务器设备240来发现广播的指示。附加地或者备选地,网络设备230可以基于某种其它技术发现指示。网络设备230可以与服务器设备240通信以请求更新指令并且可以从服务器设备240接收更新指令。附加地或者备选地,服务器设备240可以认证网络设备230以接收更新指令。
在一些实现方式中,可以省略块550(例如,在服务器设备240发布更新指令以用于由网络设备230发现时)。在一些实现方式中,可以省略块560(例如,在服务器设备240向网络设备230提供更新指令时)。
在一些实现方式中,网络设备230可以使用更新指令以修改由网络设备230实施的路由表。例如,如以上描述的那样,网络设备230可以修改路由表以修改如何处理与特定IP地址关联的数据流和/或标识向其提供数据流以代表网络设备230处理数据流的特定服务器设备240和/或特定虚拟机。如以下更具体描述的那样,网络设备230除了从服务器设备240接收更新指令之外或者在从服务器设备240接收更新指令的备选中可以基于其它因素修改路由表。
尽管以上已经关于图5描述了特定块系列,但是可以在其它实现方式中修改操作、数据流和/或块的顺序。可以并行执行非依赖性操作和/或数据流。也可以在一些实现方式中省略块中的一个或者多个块。
图6图示了由网络设备实施的用于更新路由表的示例流程图。在一些实现方式中,过程600可以由网络设备230的一个或者多个部件执行。在一些实现方式中,过程600的块中的一些或者所有块可以由在环境200中的另一设备(例如,服务器设备240)的一个或者多个部件或者包括或者不包括网络设备230的一组设备执行。
如图6中所示,过程600可以包括接收更新指令(块610)。例如,网络设备230可以根据过程500从服务器设备240接收更新指令(例如,在服务器设备240在安装用来处理数据流的虚拟机、标识超负荷的虚拟机、接收路由协议更新信息等时提供更新指令时)。附加地或者备选地,网络设备230可以在服务器设备240如以上关于块560描述的那样发布更新指令以用于发现时发现更新指令。
过程600还可以包括发现更新的路由路径(块620)。例如,网络设备230可以发现在网络设备230、另一网络设备230、服务器设备240和/或某个其它设备之间的更新的路由路径。在一些实现方式中,网络设备230可以使用边界网关协议(BGP)和/或某个其它协议来发现更新的路由路径。在一些实现方式中,网络设备230可以基于网络配置的修改(例如,在环境200中添加或者去除网络设备230、在网络250中添加或者去除设备、添加或者去除连接在环境200中的设备的物理和/或逻辑链路等)来发现更新的路由路径。
过程600也可以包括更新路由表(块630)。例如,网络设备230可以基于接收更新指令和/或基于发现更新的路由路径来更新路由表。如以上描述的那样,路由表可以对应于与网络设备230关联的RIB。在一些实现方式中,网络设备230可以基于更新指令和/或基于更新的路由路径来修改用于与特定IP地址关联的数据流的路由指令。例如,在网络设备230从服务器设备240接收更新指令时,网络设备230可以根据更新指令修改路由表(例如,以使与特定IP关联的数据流被提供给特定服务器设备240以用于处理)。
作为示例,假设更新指令包括用于使网络设备230经由特定路由路径(例如,路由路径#1)向特定服务器设备240提供与IP地址“123.1.1.1.”关联的数据流的指令。鉴于这些假设,网络设备230可以在IP地址字段410中存储IP地址“123.1.1.1.”、可以在数据流指令字段420中存储用于特定服务器设备240的标识符、在数据流指令字段420中的路由路径#1和用于经由路由路径#1向服务器设备240提供数据流的指令。在一些实现方式中,网络设备230可以标识用于路由路径的属性并且在路径属性字段430中存储属性。例如,如以上关于路径属性字段430描述的那样,网络设备230可以确定用于路由路径的属性,比如“作为-路径”值、管理距离值、度量值和/或允许网络设备230选择执行特定数据流指令集的某个其它类型的属性。
在一些实现方式中(例如,在网络设备230确定更新路由路径时),网络设备230可以基于更新的路由路径来修改路由表(例如,以使数据流经由更新的路由路径被路由)。例如,网络设备230可以基于更新的路由路径来更新由数据流指令字段420存储的信息。另外,网络设备230可以基于更新的路由路径的属性来更新由路径属性字段430存储的信息。
如以上描述的那样,路由表可以标识网络设备230将如何处理与特定IP地址关联的数据流。另外,路由表可以标识用来向特定设备(例如,特定服务器设备240)提供数据流的路由路径。因此,在路由表中的修改可以修改网络设备230将如何处理数据流以及路由路径。另外,服务器设备240可以基于向网络设备230提供更新指令来使网络设备230修改路由表(例如,以指引网络设备230向服务器设备240提供数据流以用于处理)。如以上描述的那样,可以基于安装由服务器设备240提供的服务、基于标识服务器设备240的超负荷的虚拟机和/或基于某个其它触发来提供更新指令。作为结果,服务器设备240可以使网络设备230修改路由表,从而使得向服务器设备240提供与特定IP地址关联的数据流以用于处理。
在一些实现方式中,网络设备230可以确定由路由表标识的路由路径(例如,由被数据流指令字段420存储的信息标识的路由路径)的属性。在一些实现方式中,网络设备230可以在基于接收更新指令和/或基于确定更新的路由路径来修改路由路径时更新属性。
过程600也可以包括接收数据流(块640)。例如,网络设备230可以从用户设备210接收去往另一用户设备210和/或某个其它设备的数据流。在一些实现方式中,网络设备230可以接收与特定IP地址关联的数据流。
过程600还可以包括确定用于数据流的路由指令(块650)。例如,网络设备230可以基于路由表并且基于特定IP地址来确定路由指令。作为示例,假设与数据流关联的特定IP地址是“123.1.1.1”。另外,假设路由表存储IP地址“123.1.1.1”和对应的路由指令集,比如“路由指令集#1”。鉴于这些假设,网络设备230可以确定路由指令集#1。
在一些实现方式中(例如,在路由表存储用于特定IP地址的多个路由指令集时),网络设备230可以基于与路由指令关联的相应路由路径的属性来确定特定路由指令集。以上关于路径属性字段430描述网络设备230确定特定路由指令集的示例。
过程600还可以包括执行路由指令(块660)。例如,网络设备230可以基于标识路由指令来执行路由指令。如以上关于数据流指令字段420描述的那样,路由指令可以指引网络设备230向特定服务器设备240提供数据流、标记数据流以标识用于处理数据流的特定虚拟机、向数据流提供特定QoS处理和/或向数据流提供某个其它服务(例如,分组检查服务、防火墙服务、病毒扫描服务或者某个其它类型的服务)。
过程600也可以包括接收经处理的数据流并且朝着目的地提供经处理的数据流(块670)。例如,如以上描述的那样,网络设备230可以向服务器设备240提供数据流(例如,基于路由指令)。在一些实现方式中,服务器设备240可以接收数据流并且可以代表网络设备230处理数据流。例如,服务器设备240可以向数据流提供特定服务(例如,分组检查服务、防火墙服务、QoS处理服务、病毒扫描服务、高速缓存服务或者某个其它类型的服务)。在一些实现方式中,服务器设备240可以向网络设备230提供经处理的数据流,从而使得网络设备230可以朝着目的地设备(例如,特定用户设备210)提供经处理的数据流。作为结果,服务器设备240可以使网络设备230向服务器设备240提供数据流以用于处理(例如,通过如以上描述的那样使网络设备230修改路由表)。
尽管以上已经关于图6描述了特定块系列,但是可以在其它实现方式中修改操作、数据流和/或块的顺序。另外,可以并行执行非依赖性操作和/或数据流。
图7图示了如这里描述的示例实现方式。在图7中,假设服务器设备240向网络设备230提供更新指令(例如,以指引网络设备230向服务器设备240提供数据流以用于处理)。例如,更新指令可以包括IP地址(例如,IP地址“123.1.1.1”)和用于经由特定数据流路径(例如,“路径1”)向服务器设备240提供与IP地址关联的数据流的路由指令。鉴于这一假设,网络设备230可以基于接收更新指令来更新网络设备230的路由表(如由路由表更新功能#1指示的那样)(例如,根据过程600)。如以上描述的那样,网络设备230可以确定路径#1的属性并且可以在路由表中存储属性。
在图7中,进一步假设网络设备230发现在网络设备230与服务器设备240之间的路径(例如,与路径#1不同的路径)。例如,网络设备230可以发现在网络设备230与服务器设备240之间的路径#2(例如,使用BGP协议或者如以上描述的某个其它类型的协议)。鉴于这一假设,网络设备230可以基于发现更新的路径来更新路由表(如由路由表更新功能#2指示的那样)。如以上描述的那样,网络设备230可以确定路径#2的属性并且可以在路由表中存储属性。
如图7中所示,网络设备230可以从用户设备210-1(UD-1)接收去往用户设备210-2(UD-2)的数据流。在图7中,假设网络设备230经由IP地址“123.1.1.1”接收数据流。鉴于这一假设,网络设备230可以基于IP地址来标识用于数据流的路由指令。如以上描述的那样,网络设备230可以包括用于数据流的多个路由指令集(例如,基于路由表更新功能#1和路由表更新功能#2)。在一些实现方式中,网络设备230可以基于与相应的路由指令集关联的路径的属性来标识执行哪个路由指令集。
在图7中,假设网络设备230存储标识用于路径#1的属性的信息,比如管理距离值15。另外,假设网络设备230存储标识用于路径#2的属性的信息,比如管理距离值10。另外,假设网络设备230要选择具有最低管理距离值的路径。鉴于这些假设,网络设备230可以选择经由路径#2提供数据流,因为路径#2的管理距离值低于路径#1的管理距离值。作为结果,可以更新路由表,从而使得可以经由具有优选属性的路径向服务器设备240提供数据流。另外,服务器设备240可以经由路径#2接收数据流(例如,以代表网络设备230处理数据流)并且可以向网络设备230提供经处理的数据流以允许网络设备230朝着目的地设备(例如,UD-2)提供经处理的数据流。
如以上描述的那样,服务器设备240可以远程访问由网络设备230实施的路由表,从而使得网络设备230可以在服务器设备240实施用于代表网络设备230处理数据流的服务时向服务器设备240路由数据流。另外,网络设备230可以基于发现在服务器设备240与网络设备230之间的更新的路径(例如,具有更低管理距离值或者某个其它属性的路径)来更新路由表。作为结果,网络设备230可以保持路由表最新,从而使得经由更新的路径向服务器设备240提供数据流(例如,从而使得服务器设备240可以代表网络设备230处理数据流并且从而使得经由更新的路径提供数据流以减少网络流量和/或提高网络性能)。
前文描述提供了例示和描述,但是并未旨在于是穷举的或者将可能的实现方式限制为公开的精确形式。修改和变化鉴于以上公开内容是可能的或者可以从实现方式的实践中被获悉。
将清楚可以在各图中所图示的实现方式中在许多不同形式的软件、固件和硬件中实施以上提供的描述的不同示例。用来实施这些示例的实际软件代码或者专门化的控制硬件并未限制实现方式。因此,描述这些示例的操作和行为而未参照具体软件代码,理解可以设计软件和控制硬件以基于这里的描述来实施这些示例。
即使在权利要求中记载和/或在说明书中公开了特定特征组合,这些组合也并非旨在于限制可能的实现方式的公开内容。事实上,可以用未具体在权利要求中记载和/或在说明书中公开的方式组合这些特征中的许多特征。虽然每个所列出的从属权利要求可能仅直接从属于一个其它权利要求,但是可能的实现方式的公开内容包括与在权利要求集合中的每个其它权利要求组合的每个从属权利要求。
除非明确地这样描述,否则不应将在本申请中使用的单元、动作或者指令解释为关键或者必需。也如这里所用,冠词“一个/一种”旨在于包括一个或者多个项目并且可以与“一个或者多个”可互换地被使用。在意指仅一个项目时,使用措词“一个”或者相似语言。另外,除非另有明确地陈述,短语“基于”旨在于意味着“至少部分基于。”。

Claims (21)

1.一种用于更新路由表的方法,包括:
由网络设备接收用于更新由所述网络设备实施的路由表的第一指令;
由所述网络设备基于接收所述第一指令来更新所述路由表,
所述路由表包括用于指引所述网络设备向服务器设备提供数据流以用于处理的路由指令,所述数据流与网际协议地址的至少一部分相关联;
由所述网络设备接收去往目的地设备的所述数据流;
由所述网络设备基于与所述数据流关联的所述网际协议地址的所述至少一部分并且基于对应于所述网际协议地址的所述至少一部分的所述路由表中的信息来确定所述路由指令;
由所述网络设备执行所述路由指令,以向所述服务器设备提供所述数据流并且使所述数据流被所述服务器设备处理以形成经处理的数据流;以及
由所述网络设备接收所述经处理的数据流并且朝着所述目的地设备提供所述经处理的数据流。
2.根据权利要求1所述的方法,其中接收用于更新所述路由表的所述第一指令是基于:当所述服务器设备在所述服务器设备上安装服务时,所述服务器设备提供所述第一指令。
3.根据权利要求1所述的方法,还包括:
在所述服务器设备发布所述第一指令时发现所述第一指令,
其中接收所述第一指令是基于发现所述第一指令。
4.根据权利要求1所述的方法,还包括:
发现在所述网络设备与所述目的地设备或者所述服务器设备之间的更新的路径,
其中更新所述路由表是基于发现所述更新的路径。
5.根据权利要求1所述的方法,其中用于更新所述路由表的所述第一指令与路由协议更新关联。
6.根据权利要求1所述的方法,其中确定所述路由指令还基于在所述路由表中包括的属性信息。
7.根据权利要求1所述的方法,其中执行所述路由指令包括在向所述服务器设备提供所述数据流之前向所述数据流提供服务。
8.根据权利要求1所述的方法,其中所述路由表对应于路由信息库(RIB)。
9.一种用于更新路由表的***,包括:
网络设备,所述网络设备被配置为:
接收用于更新由所述网络设备实施的数据结构的第一指令;
基于接收所述第一指令来更新所述数据结构,
所述数据结构包括用于指引所述网络设备向服务器设备提供数据流以用于处理的路由指令,所述数据流与网际协议地址的至少一部分相关联;
接收去往目的地设备的所述数据流;
基于与所述数据流关联的所述网际协议地址的所述至少一部分并且基于对应所述网际协议地址的所述至少一部分的所述数据结构来确定所述路由指令;
执行所述路由指令,以向所述服务器设备提供所述数据流并且使所述数据流被所述服务器设备处理以形成经处理的数据流;
以及
接收所述经处理的数据流并且朝着所述目的地设备提供所述经处理的数据流。
10.根据权利要求9所述的***,其中当接收用于更新所述数据结构的所述第一指令时,所述网络设备被配置为基于当所述服务器设备在所述服务器设备上安装服务时、所述服务器设备提供所述第一指令来接收用于更新所述数据结构的所述第一指令。
11.根据权利要求9所述的***,其中所述网络设备还被配置为在所述服务器设备发布所述第一指令时发现所述第一指令,
其中当用于接收所述第一指令时,所述网络设备被配置为基于发现所述第一指令来接收所述第一指令。
12.根据权利要求9所述的***,其中所述网络设备还被配置为发现在所述网络设备与所述目的地设备或者所述服务器设备之间的更新的路径,
其中当更新所述数据结构时,所述网络设备被配置为基于发现所述更新的路径来更新所述数据结构。
13.根据权利要求9所述的***,其中用于更新所述数据结构的所述第一指令与路由协议更新关联。
14.根据权利要求9所述的***,其中当执行所述路由指令时,所述网络设备还被配置为在向所述服务器设备提供所述数据流之前向所述数据流提供服务。
15.根据权利要求9所述的***,其中所述路由表对应于路由信息库(RIB)。
16.一种网络设备,包括:
用于接收用于更新由所述网络设备实施的数据结构的第一指令的装置,
所述数据结构对应于路由信息库(RIB);
用于基于接收所述第一指令来更新所述数据结构的装置,
所述数据结构包括用于指引所述网络设备向服务器设备提供数据流以用于处理的路由指令,所述数据流与网际协议地址的至少一部分相关联;
用于接收去往目的地设备的所述数据流的装置;
用于基于所述网际协议地址的所述至少一部分并且基于对应所述网际协议地址的所述至少一部分的所述数据结构来确定所述路由指令的装置;
用于执行所述路由指令,以向所述服务器设备提供所述数据流并且使所述数据流被所述服务器设备处理以形成经处理的数据流的装置;以及
用于接收所述经处理的数据流并且朝着所述目的地设备提供所述经处理的数据流的装置。
17.根据权利要求16所述的网络设备,其中用于接收用于更新所述数据结构的所述第一指令的所述装置包括:
用于基于当所述服务器设备在所述服务器设备上安装服务时、所述服务器设备提供所述第一指令来接收用于更新所述数据结构的所述第一指令的装置。
18.根据权利要求16所述的网络设备,还包括:
用于在所述服务器设备发布所述第一指令时发现所述第一指令的装置,
其中用于接收所述第一指令的所述装置包括用于基于发现所述第一指令来接收所述第一指令的装置。
19.根据权利要求16所述的网络设备,还包括:
用于发现在所述网络设备与所述目的地设备或者所述服务器设备之间的更新的路径的装置,
其中用于更新所述数据结构的所述装置包括用于基于发现所述更新的路径来更新所述数据结构的装置。
20.根据权利要求16所述的网络设备,其中用于确定所述路由指令的所述装置包括:
用于基于在所述数据结构中包括的属性信息来确定所述路由指令的装置。
21.一种存储指令的计算机可读介质,所述指令当由网络设备执行时,使得所述网络设备执行根据权利要求1至8中任一项所述的方法。
CN201410370235.XA 2013-07-31 2014-07-30 远程更新路由表 Active CN104348734B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/955,945 2013-07-31
US13/955,945 US10135732B2 (en) 2012-12-31 2013-07-31 Remotely updating routing tables

Publications (2)

Publication Number Publication Date
CN104348734A CN104348734A (zh) 2015-02-11
CN104348734B true CN104348734B (zh) 2019-01-08

Family

ID=51225391

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410370235.XA Active CN104348734B (zh) 2013-07-31 2014-07-30 远程更新路由表

Country Status (3)

Country Link
US (2) US10135732B2 (zh)
EP (2) EP3410655B1 (zh)
CN (1) CN104348734B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10135732B2 (en) * 2012-12-31 2018-11-20 Juniper Networks, Inc. Remotely updating routing tables
US10298713B2 (en) * 2015-03-30 2019-05-21 Huawei Technologies Co., Ltd. Distributed content discovery for in-network caching
CN107181686B (zh) * 2016-03-09 2020-06-23 阿里巴巴集团控股有限公司 路由表的同步方法、装置及***
US10395648B1 (en) 2019-02-06 2019-08-27 Capital One Services, Llc Analysis of a topic in a communication relative to a characteristic of the communication
CN113014493B (zh) * 2019-12-20 2022-05-17 中盈优创资讯科技有限公司 路由播发方法及装置
US11916988B2 (en) * 2020-09-28 2024-02-27 Bose Corporation Methods and systems for managing simultaneous data streams from multiple sources

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101036355A (zh) * 2004-12-01 2007-09-12 思科技术公司 具有igp扩展的域间te-lsp
CN101035355A (zh) * 2006-03-07 2007-09-12 中兴通讯股份有限公司 一种鉴权授权计费路由表更新的方法
CN102100040A (zh) * 2008-06-09 2011-06-15 诺基亚公司 用于通信路由的方法、装置和计算机程序产品

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006264A (en) 1997-08-01 1999-12-21 Arrowpoint Communications, Inc. Method and system for directing a flow between a client and a server
US6539026B1 (en) 1999-03-15 2003-03-25 Cisco Technology, Inc. Apparatus and method for delay management in a data communications network
US6836463B2 (en) * 1999-10-15 2004-12-28 Nokia Corporation System for communicating labeled routing trees to establish preferred paths and source routes with local identifiers in wireless computer networks
US6651142B1 (en) 2000-05-05 2003-11-18 Sagent Technology Method and apparatus for processing data using multi-tier caching
US6651067B1 (en) 2000-05-05 2003-11-18 Sagent Technology Method and apparatus for creating a data set with pending results
US8042041B1 (en) 2000-05-05 2011-10-18 Pitney Bowes Software Inc. Method and apparatus for pipelined processing of data
US7529563B1 (en) 2000-07-10 2009-05-05 Pitroda Satyan G System for distribution and use of virtual stored value cards
US6836462B1 (en) * 2000-08-30 2004-12-28 Cisco Technology, Inc. Distributed, rule based packet redirection
US8180870B1 (en) * 2000-11-28 2012-05-15 Verizon Business Global Llc Programmable access device for a distributed network access system
US7035202B2 (en) * 2001-03-16 2006-04-25 Juniper Networks, Inc. Network routing using link failure information
US7363353B2 (en) * 2001-07-06 2008-04-22 Juniper Networks, Inc. Content service aggregation device for a data center
US7093001B2 (en) * 2001-11-26 2006-08-15 Microsoft Corporation Methods and systems for adaptive delivery of multimedia contents
FR2832895B1 (fr) * 2001-11-26 2004-02-20 France Telecom Systeme de telecommunication a gestion centralisee
JPWO2003075161A1 (ja) * 2002-03-07 2005-06-30 富士通株式会社 ストレージ仮想化システムの変換管理装置およびストレージ仮想化システムの変換管理方法
US6856991B1 (en) * 2002-03-19 2005-02-15 Cisco Technology, Inc. Method and apparatus for routing data to a load balanced server using MPLS packet labels
US7047315B1 (en) * 2002-03-19 2006-05-16 Cisco Technology, Inc. Method providing server affinity and client stickiness in a server load balancing device without TCP termination and without keeping flow states
US7602788B2 (en) * 2002-11-04 2009-10-13 At&T Intellectual Property I, L.P. Peer to peer SVC-based DSL service
US7668541B2 (en) * 2003-01-31 2010-02-23 Qualcomm Incorporated Enhanced techniques for using core based nodes for state transfer
JP2004287861A (ja) 2003-03-24 2004-10-14 Fuji Xerox Co Ltd サービス処理装置、サービス処理方法及びプログラム
US7382765B2 (en) * 2003-04-30 2008-06-03 Harris Corporation Predictive routing in a moble ad hoc network
US20050010925A1 (en) * 2003-07-10 2005-01-13 Charbel Khawand Interprocessor communication protocol with smart streaming port
US7881215B1 (en) 2004-03-18 2011-02-01 Avaya Inc. Stateful and stateless data processing
US7826372B1 (en) * 2004-03-26 2010-11-02 Rockwell Collins, Inc. Network routing process for regulating traffic through advantaged and disadvantaged nodes
US7843843B1 (en) 2004-03-29 2010-11-30 Packeteer, Inc. Adaptive, application-aware selection of differntiated network services
US7496661B1 (en) 2004-03-29 2009-02-24 Packeteer, Inc. Adaptive, application-aware selection of differentiated network services
US7376080B1 (en) 2004-05-11 2008-05-20 Packeteer, Inc. Packet load shedding
TWI276244B (en) 2004-06-04 2007-03-11 Wistron Neweb Corp Wireless communication device capable of switching antennas according to data transmission information on network
US7505463B2 (en) * 2004-06-15 2009-03-17 Sun Microsystems, Inc. Rule set conflict resolution
US7742406B1 (en) 2004-12-20 2010-06-22 Packeteer, Inc. Coordinated environment for classification and control of network traffic
US20080008183A1 (en) * 2004-12-28 2008-01-10 Keiichi Takagaki Communication Device, Storage Medium, Integrated Circuit, and Communication System
EP1875763B1 (en) * 2005-04-29 2010-11-24 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Internetworking of cellular radio networks and wireless data networks
US7653075B2 (en) * 2005-05-23 2010-01-26 Juniper Networks, Inc. Processing communication flows in asymmetrically routed networks
US20060288418A1 (en) * 2005-06-15 2006-12-21 Tzu-Jian Yang Computer-implemented method with real-time response mechanism for detecting viruses in data transfer on a stream basis
US7647426B2 (en) * 2006-01-12 2010-01-12 Cisco Technology, Inc. Method and apparatus for achieving Border Gateway Protocol convergence using alternate route information
ITTO20060149A1 (it) * 2006-03-01 2007-09-02 Cisco Tech Inc Tecnica per l'instradamento ottimizzato di flussi di dati su una dorsale ip in una rete di computer.
US7735139B1 (en) * 2006-05-17 2010-06-08 Trend Micro Incorporated In-line scanning of network data in an asymmetric routing environment
FR2908575B1 (fr) * 2006-11-09 2009-03-20 At & T Corp Methode et appareil pour fournir un equilibrage de charge base sur le flux
KR100819055B1 (ko) * 2006-12-08 2008-04-02 한국전자통신연구원 이동 IPv6 네트워크에서 플로우 기반 QoS 보장을위한 3 계층 핸드오버 경로 설정 방법
US20080194246A1 (en) * 2007-02-12 2008-08-14 Thierry Etienne Klein Apparatus and Method for Providing a Rapidly Deployable Wireless Network
US7765312B2 (en) * 2007-03-12 2010-07-27 Telefonaktiebolaget L M Ericsson (Publ) Applying policies for managing a service flow
US7864676B2 (en) 2008-07-14 2011-01-04 The Mitre Corporation Network cross-domain precedence and service quality conflict mitigation
US8098650B2 (en) * 2008-11-28 2012-01-17 Korea Advanced Institute Of Science And Technology Apparatus and method for processing contents using routing table
US7995480B2 (en) * 2008-12-23 2011-08-09 Nokia Corporation Offloading content routing cost from routers
US8266673B2 (en) 2009-03-12 2012-09-11 At&T Mobility Ii Llc Policy-based privacy protection in converged communication networks
CN102106124B (zh) * 2009-04-16 2013-08-28 华为技术有限公司 路由方法、装置及***
US8705361B2 (en) 2009-06-16 2014-04-22 Tellabs Operations, Inc. Method and apparatus for traffic management in a wireless network
US9621516B2 (en) * 2009-06-24 2017-04-11 Vmware, Inc. Firewall configured with dynamic membership sets representing machine attributes
US8934495B1 (en) * 2009-07-31 2015-01-13 Anue Systems, Inc. Filtering path view graphical user interfaces and related systems and methods
US8018943B1 (en) * 2009-07-31 2011-09-13 Anue Systems, Inc. Automatic filter overlap processing and related systems and methods
US8300578B2 (en) * 2009-08-04 2012-10-30 Sony Corporation System, apparatus and method for seamless roaming through the use of routing update messages
EP2309680B1 (en) * 2009-10-08 2017-07-19 Solarflare Communications Inc Switching API
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch
US8665101B2 (en) 2009-11-16 2014-03-04 Aquarius Spectrum Ltd. System method and device for leak detection and localization in a pipe network
US20120079092A1 (en) * 2009-12-28 2012-03-29 Telefonaktiebolaget L M Ericsson (Publ) Management of data flows between user equipment nodes and clusters of networked resource nodes
EP2410698B1 (en) * 2010-07-19 2014-05-07 Alcatel Lucent A method for routing and associated routing device and destination device
US8804747B2 (en) 2010-09-23 2014-08-12 Cisco Technology, Inc. Network interface controller for virtual and distributed services
US9749241B2 (en) * 2010-11-09 2017-08-29 International Business Machines Corporation Dynamic traffic management in a data center
CN102075445B (zh) * 2011-02-28 2013-12-25 杭州华三通信技术有限公司 负载均衡方法及装置
US8989029B2 (en) 2011-06-10 2015-03-24 Comcast Cable Communications, Llc Quality of service in packet networks
WO2013060378A1 (en) * 2011-10-28 2013-05-02 Telecom Italia S.P.A. Apparatus and method for selectively delaying network data flows
CN103095517B (zh) * 2011-11-04 2016-12-07 华为技术有限公司 流媒体传输质量评估和信息获取方法及相关设备和***
US9848090B2 (en) 2012-01-24 2017-12-19 Alcatel Lucent Offline charging per service data flow
US8693322B2 (en) * 2012-02-21 2014-04-08 Yikun Zhang Routing method for a wireless multi-hop network
US9164808B2 (en) * 2012-07-20 2015-10-20 Verizon Patent And Licensing Inc. Virtual container for network systems
US9684886B2 (en) 2012-08-10 2017-06-20 Sap Se Cross-domain business mashup integration
US9202017B2 (en) * 2012-09-27 2015-12-01 Verizon Patent And Licensing Inc. Changing levels of quality of service
US9727872B2 (en) 2012-10-04 2017-08-08 Moneygram International, Inc. Utilizing near field communication to improve customer interactions
EP2725751B1 (en) * 2012-10-24 2014-12-10 Nxp B.V. Routing table updating
US8954535B2 (en) 2012-12-31 2015-02-10 Juniper Networks, Inc. Dynamic network device processing using external components
US10135732B2 (en) * 2012-12-31 2018-11-20 Juniper Networks, Inc. Remotely updating routing tables
US9477506B2 (en) * 2013-02-12 2016-10-25 Futurewei Technologies, Inc. Dynamic virtual machines migration over information centric networks
US9130866B2 (en) * 2013-03-13 2015-09-08 Cisco Technology, Inc. Transparent flow based application navigator
US9392050B2 (en) * 2013-03-15 2016-07-12 Cisco Technology, Inc. Automatic configuration of external services based upon network activity
WO2014176752A1 (en) * 2013-04-29 2014-11-06 Hewlett-Packard Development Company, L.P. Host mobility messaging
JP5953588B1 (ja) 2013-05-06 2016-07-20 ヴィーバ システムズ インコーポレイテッド 電子通信を制御するシステムおよび方法
US9596189B1 (en) * 2013-10-02 2017-03-14 Media Temple, Inc. Virtual machine management
US9356861B2 (en) * 2014-03-17 2016-05-31 Alcatel Lucent Secondary lookup for scaling datapath architecture beyond integrated hardware capacity
US11777844B2 (en) * 2020-07-03 2023-10-03 Huawei Technologies Co., Ltd. Distributing information in communication networks
US20230315919A1 (en) * 2022-03-31 2023-10-05 Fortinet, Inc. Virtual one-time programming (otp) to avoid dead chip during otp device programming

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101036355A (zh) * 2004-12-01 2007-09-12 思科技术公司 具有igp扩展的域间te-lsp
CN101035355A (zh) * 2006-03-07 2007-09-12 中兴通讯股份有限公司 一种鉴权授权计费路由表更新的方法
CN102100040A (zh) * 2008-06-09 2011-06-15 诺基亚公司 用于通信路由的方法、装置和计算机程序产品

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OPEN NETWORKING FOUNDATION.openflow-spec-v1.3.1.《OpenFlow Switch Specification》.2012,

Also Published As

Publication number Publication date
EP3410655A1 (en) 2018-12-05
US20180006942A1 (en) 2018-01-04
CN104348734A (zh) 2015-02-11
EP3410655B1 (en) 2021-10-27
EP2833588A1 (en) 2015-02-04
US10135732B2 (en) 2018-11-20
EP2833588B1 (en) 2018-09-19
US20190089631A1 (en) 2019-03-21

Similar Documents

Publication Publication Date Title
CN104348734B (zh) 远程更新路由表
US10505804B2 (en) System and method of discovering paths in a network
US10560354B2 (en) End-to-end, in situ packet enrichment for network analytics
Afanasyev et al. ndnSIM: NDN simulator for NS-3
CN105721297B (zh) 基于sdn网络中路由环路的检测方法及***
US8949959B2 (en) Reduced authentication times for shared-media network migration
US7885197B2 (en) System and method for measuring per node packet loss in a wireless network
US8451744B2 (en) Partitioning directed acyclic graph (DAG) topologies
CN102835080B (zh) 网络数据拥塞管理***
CN104769884B (zh) 利用流数据的转发表优化
JP2011146920A (ja) トポロジーツリー作成装置、プログラム、及び方法
CN106105115A (zh) 网络环境中由服务节点始发的服务链
CN104350713B9 (zh) 路由决策上下文对象
US20160134542A1 (en) System and method for optimizing traffic in packet-switched networks with internet exchanges
JPWO2012090993A1 (ja) 情報システム、制御装置、通信方法およびプログラム
CN107404439A (zh) 用于重定向数据流的方法和***、网络设备和控制设备
CN106803809B (zh) 一种报文转发的方法和装置
CN105530185B (zh) 覆盖路由网络、基于覆盖路由网络的路由方法及路由器
CN101594301A (zh) 一种报文处理方法和装置
JPWO2015075862A1 (ja) ネットワーク制御装置、ネットワーク制御方法およびプログラム
EP2983333B1 (en) A system and method for providing routes to physical residential gateways
Wang et al. Compact location encodings for scalable Internet routing
Kriska et al. Dynamic routing of IP traffic based on QoS parameters
KR101242599B1 (ko) Mpls vpn 라우팅 정보 관리 서버 및 그 방법
Rivera et al. Dynamically creating custom SDN high-speed network paths for big data science flows

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant