CN1318852C - 一种防止对服务器群集的拒绝服务攻击的装置及其方法 - Google Patents

一种防止对服务器群集的拒绝服务攻击的装置及其方法 Download PDF

Info

Publication number
CN1318852C
CN1318852C CNB028164792A CN02816479A CN1318852C CN 1318852 C CN1318852 C CN 1318852C CN B028164792 A CNB028164792 A CN B028164792A CN 02816479 A CN02816479 A CN 02816479A CN 1318852 C CN1318852 C CN 1318852C
Authority
CN
China
Prior art keywords
data
processing unit
rate
resource server
network resource
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.)
Expired - Fee Related
Application number
CNB028164792A
Other languages
English (en)
Other versions
CN1545624A (zh
Inventor
C·S·林加菲尔特
D·E·麦康奈尔
F·E·诺埃尔
C·J·圣尼波利
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1545624A publication Critical patent/CN1545624A/zh
Application granted granted Critical
Publication of CN1318852C publication Critical patent/CN1318852C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Abstract

一种包括网络资源服务器或者由多个计算机系统(图2中的100A-D)构成的服务器群以及网络处理器(图2中的10)的系统以及相关方法,其中该网络处理器在所述服务器群的支持下以与所述网络的数据流速率大致相同的速率传输与一外部网络(图1的170)交换的数据。所述网络处理器保护所述网络资源服务器免受诸如拒绝服务攻击的攻击,其方法是监视数据流,计算所述数据流对时间的导数以确定数据流的变化率(图5的步骤202),并修改指令,以便响应于在预定边界之外的变化率而丢弃包。

Description

一种防止对服务器群集的拒绝服务攻击的装置及其方法
技术领域
本发明涉及网络通信,更具体地说涉及用于防止对服务器群集的拒绝服务攻击的装置和方法。
相关申请
为了帮助理解在此描述的发明,有兴趣的读者可以参考以下在先申请,这些在先申请与本说明书相关,并且其中每一个都作为参考完整地纳入本说明书,就如同其全文在此重复出现一样:
美国专利申请第09/384,691号,申请日为1999年8月27日,标题为“网络处理器处理复合体和方法”(Network Processor ProcessingComplex and Methods);
美国专利申请第09/384,744号,申请日为1999年8月27日,标题为“网络处理器、存储器组织和方法”(Network Processor,MemoryOrganization and Methods);
美国专利申请第09/448,190号,申请日为1999年11月23日,标题为“用于提供最佳丢弃比例的方法和系统”(Method and System forProviding Optimal Discard Fraction);
美国专利申请第09/551,707号,申请日为2000年4月18日,标题为“使用网络处理器的服务器群集互连”(Server Cluster InterconnectionUsing Network Processor);
美国专利申请第09/551,822号,申请日2000年4月18日,标题为“数据流模式识别和操纵”(Data Flow Pattern Recognition andManipulation)。
背景技术
1948年的EDVAC计算机系统的开发常常被称为计算机时代的开始。从那时起,计算机系统已经发展成为极其复杂的设备,并且在很多不同的场合都能看到计算机系统。计算机系统通常包括硬件(例如半导体、电路板等)和软件(例如计算机程序)的结合。当半导体工艺和计算机结构体系的进步提高了计算机硬件的性能的时候,更复杂的计算机软件就发展出来以利用硬件的更高的性能,这使得今天的计算机系统比仅仅几年以前的计算机系统具有强大得多的功能。
技术方面的其他变化也深刻地影响了我们使用计算机的方式。例如,计算机的广泛普及促进了计算机网络的发展,这些计算机网络使得计算机可以相互通信。随着个人计算机(PC)的出现,计算功能对于很多人来说都是可以获得的了。人们开发出个人计算机的网络,以使个人用户之间可以相互通信。以这种方式,一公司内部或诸公司之间的很多人可以使用运行在单个计算机系统上的软件应用通过网络同时地进行通信。
近来变得非常流行的一个重要的计算机网络是因特网。因特网起因于计算机和网络在现代的普及,并已发展成为互连的包含网页的诸计算机系统的复杂的全球性网络。这种通信网络和计算机系统的系统共同构成“全球网”,或称“WWW”。坐在个人PC(即工作站)之前、希望访问WWW的用户通常使用称为Web浏览器的软件应用进行访问。Web浏览器通过因特网与称为Web服务器的计算机进行连接,并从所述Web服务器接收将在用户的工作站上显示的信息。显示给用户的信息通常被组织为一些页面,这些页面是使用一种称为超文本标记语言(HTML)的专门语言构造的。市场上的几乎每个计算机系统目前都提供使用HTML的Web浏览器,这使得实际上任何可以获得一个计算机和一个调制解调器的人都可以访问WWW。虽然WWW正变得日益流行,但是访问WWW的计算机用户的迅速增长和扩充却带来了一些相伴随的问题。本说明书就论及了这些问题中的某一些。
全球网发展的一个产物是服务器群(server farm)。使用“群”一词是为了表达有若干设备以这样的方式运行地连接起来,以至于数据可以或多或少地无缝地在终端用户间向着群内任何一个协同运转的设备流动。这样,多个服务器计算机系统合作,来划分网络的数据处理要求。尽管进行这种功能划分的技术已经存在或正在开发中,在这种情况下可能产生一些问题,这些问题是这里描述的本发明所要处理和解决的。应当注意的是,下面描述的本发明既可以应用于一单个服务器系统中,也可以应用于一服务器群中。由于这个原因,这里偶尔使用“群”一词来指一单个服务器计算机系统。
以下的描述预先假定读者具有对网络数据通信和在这种通信网络中使用的交换机和路由器的知识。特别地,该描述预先假定读者熟悉将网络操作划分为层的网络结构体系的OSI模型。一个典型的基于OSI模型的结构体系从作为物理通路或介质的层1(有时也称为“L1”)开始,信号通过所述层1经由层2至7向上传输,上述最后一层是运行在连接到该网络的计算机系统上的应用编程层。在本说明书中,提到L1、L2等是意指一网络结构体系的相应的层。本说明书也预先假定读者对被称为包、帧或信元(cell)的位串以及在网络通信中对它们的处理有基本的理解。在后面这一点上,本说明书预先假定读者具有某种技术知识,使用这种技术,这种位串在排队管理器的控制下,在通信设备和计算机系统的存储器中所提供的诸队列中通过。队列管理包括在先前已知的、已开始被称为RED和BLUE的过程,它们确定保持在队列中的排队数据的水平,并且确定到达该队列的数据的所谓提供速率。对这一技术的更多讨论将在本说明书的后文中提供。
这里处理的一个特殊问题产生于有意地企图拒绝向用户提供一特定服务器或服务器群的资源。这种企图的现已成为经典的一种形式被称为“拒绝服务”或DOS攻击。DOS攻击通常是由希望妨碍人们得到一网络资源例如一订户服务或一特定网站或数据库的个人或集团组织的。攻击者使用任何可以调度的资源,造成数量迅速增加的对该资源的请求在与该资源相连接的网络(例如因特网)上传输。当支持该资源的服务器的响应能力有限(这是必然的)时,几乎同时出现的大量请求将造成过载,并造成服务器或者减慢其响应速度,或者在很多情况下,“崩溃”或者说变得无法访问。在某些情况下,恢复该资源的可获得性或者说“使服务器恢复正常”,可能要耗费技术支持人员的几小时或几个人日。
因此,本发明的目标是提供一种用于帮助保护一服务器计算机系统或结合为一服务器群的多个服务器计算机系统的系统和方法。
发明内容
本发明实现了上述和其他目标,在本发明中,一网络处理器被置于服务器和网络之间,并被用来检测和排除DOS攻击。所述网络处理器以这样的方式保护网络资源服务器防止诸如拒绝服务攻击之类的攻击,即监视数据流,计算该数据流对时间的导数以决定数据流的变化率,并响应于超出预定边界的变化率,修改用来丢弃一些包的指令。
附图说明
现在特别参照以下附图更详细地描述本发明,其中:
图1是本发明可在其中实施的一计算机系统的示意图;
图2是使用多个如图1所示的计算机系统和一个如图3和4所示的网络处理器构成的一服务器群的示意图;
图3是本发明中使用的一网络处理器的一示意图;
图4是本发明中使用的一网络处理器的另一示意图;
图5示出了在根据本发明通过监视进入的包而阻止拒绝服务攻击得逞时所执行的步骤;以及
图6示出了在根据本发明通过监视外出的包而阻止拒绝服务攻击得逞时所执行的步骤。
具体实施方式
虽然在下文中将参照示出了本发明的一优选实施例的诸附图更全面地描述本发明,但在以下描述的一开始应该理解,适当领域的技术人员可以修改这里描述的本发明,而仍然获得本发明的有利结果。因此,以下描述应该被理解为面向适当领域的技术人员的宽泛的、启发性的说明,而不应被理解对本发明的限制。
在参照附图之前,一些简短的一般性讨论被认为是适当的。网络处理器是一种新兴技术,其允许媒体速度处理和/或通信包分析,以及基于这种处理和分析的决策。一经常使用的应用是提供一个或多个网络处理器,这些网络处理器通过一交换结构(switching fabric)连接起来,而形成一通信产品,例如一交换机或路由器,其可执行到一外部广域网的网关功能。由网络处理器进行的处理一般包括检查包的内容(通常为报头中的源/目的地址对),然后基于所述地址对作出交换或路由决策。这种处理称为“过滤”,而所作出的关于如何交换包的决策是由一组通常称为“过滤规则”的规则所规定的。
图2示出了一个这种应用,其中一个或多个NP(可能通过一交换结构)连接到一个或多个数据处理服务器。在这种应用中,NP在提供将数据流指引到各种服务器的交换功能,但也可以执行其他功能,例如加密和/或解密、压缩和/或解压缩、病毒检测等。本发明也考虑到NP可以与服务器功能集成在一起。
在下文中描述的所有情景中,NP的主要功能是基于通常由网络管理员输入通信系统的一组准则来过滤数据流。然后网络处理器使用这些过滤规则来指引通信流。在一些更高级的应用中,在网络过载的情况下,可以调用服务类别过滤规则,来以不同方式处理某些数据流。以下描述处理单个类别或类型的数据流。
如上所述,当一网络通信产品担当一服务器或一服务器群的一网关或一入口时,网络管理员可以使用由网络处理器(NP)提供的功能,设置一些过滤规则,来把通信流指引到特定服务器,重定向通信流,或者丢弃通信流,这些都基于预定的一组稳定状态规则。例如,所有视频通信流可以具有高的优先级,并可以总是被路由到一特定的高性能服务器。然而,任何使用过因特网/内部网的人都遇到过这样的情况,其中由于对一特定应用(例如电子邮件)的一特定类别的服务的拥塞,延迟变得过长,而在大多数时候,这是因为一服务器由于置于该服务器之上的瞬时负载而无法进行响应。在极端情况下,当一个人或几个人的小集团向一特定服务器发送大量对服务的请求,因而拒绝了其他人对该服务器的诸资源的使用时,会发生被称为拒绝服务攻击的对服务器的攻击。
根据这里描述的本发明,NP具有两个独特的功能,其可以用来解决这个问题。首先,NP具有使用其诸微微处理器(picoprocessor)之一(或其嵌入的控制点处理器)来提供对数据流的实时分析的能力。其次,NP既可以看到进入服务器的进入通信流,也可以看到离开服务器的外出通信流。
NP的基本功能是监视流向一服务器的数据包流并对该数据包流施加其一组可编程的过滤器。当NP提供这种功能时,它能够监视流向特定服务器(或端口)的数据包流的速率。对于这种监视数据包流的功能,本发明添加了这样的功能,即使用其嵌入的处理器之一,通过确定每秒包数对时间的一次导数,来分析流速率。一旦NP看到发生偏离一正常条件的显著变化(例如通信流速率的变化率的显著增加),它可以施加对包的附加过滤(丢弃或重新路由),以便服务器不会变得过载。这是对拒绝服务攻击的所希望的反应。当NP看到趋向一正常条件的显著变化(如通信流速率的变化率的显著减小)时,NP可以恢复到流向该服务器的数据流的原来状态。
利用NP的观察离开服务器的外出数据流的能力,可以对这个技术完成一附加的改进。在这种情况下,当本发明的NP通过其一次导数分析,确定从一服务器外出的数据流的变化率表现出显著减小时,NP可以在进入该服务器的数据流上施加附加的过滤(丢弃或重新路由),直到当离开该服务器的数据流恢复正常时为止。
现在参照图1,为完整性起见,本发明所考虑的一计算机系统100包括一中央处理单元(CPU)110、一主存储器120、一海量存储设备接口140和一网络接口150,它们都由系统总线160连接起来。本领域的技术人员将会理解,该系统包括所有类型的计算机系统:个人计算机、中型计算机、大型计算机等。应注意,在这里描述的本发明的范围之内,可以对该计算机系统100进行很多添加、修改和删除。这样的例子(未示出)有一计算机监视器、一输入键盘、一高速缓冲存储器、以及诸如打印机等外围设备。本发明可以作为一Web服务器而运行,这种Web服务器通常是由个人计算机或中型计算机实施的。
CPU 110可以由一个或多个微处理器和/或集成电路来构成。CPU 110执行存储在主存储器120中的程序指令。主存储器120存储计算机可以访问的程序和数据。当计算机系统100启动时,CPU 110起初执行操作系统134的程序指令。操作系统134是一种管理计算机系统100的诸资源的复杂程序。这些资源中的一些是CPU 110、主存储器120、海量存储设备接口140、网络接口150和系统总线160。
主存储器120包括一Web服务器应用122、一事务处理器124、一个或多个宏文件126、一配置文件128、一个或多个语言处理器130、一操作系统134、一个或多个应用程序136和程序数据138。应用程序136在操作系统134的控制下由CPU 110执行。应用程序136可以使用程序数据138作为输入而运行。应用程序136也可以输出其结果,作为主存储器中的程序数据138。当计算机系统100作为一Web服务器运行时,CPU 110在执行其他程序之外,执行一Web服务器应用122。事务处理器124是处理存储在一个或多个宏文件126中的HTML页的程序。当事务处理器124初始化时,它读取配置文件128,以把不同类型的查询与不同的语言处理器130关联起来。当在一页中发现一动态数据的查询时,事务处理器124从配置数据(从所述配置文件中读取的)确定它应当调用哪个语言处理器130来处理所述查询。然后,适当的语言处理器130查询一数据源,例如存储器或者一数据库,以获取所述动态数据。语言处理器130将所述动态数据传递给事务处理器124,由其将所述动态数据插入所选择页的HTML数据中。
海量存储设备接口140允许计算机系统100从一些附加的存储设备例如磁盘(硬盘、软盘)和光盘(CD-ROM)中获取和存储数据。这些海量存储设备一般称为直接存取存储设备(DASD),并且作为信息的永久存储设备。DASD的一种适当类型是软盘驱动器180,其从一软盘186中读取数据和在其中写入数据。来自DASD的数据可以是多种形式的。常见的形式是应用程序和程序数据。通过海量存储设备接口140获得的数据经常被放在主存储器120中,CPU 110可以在其中对数据进行处理。
尽管主存储器120和DASD设备180通常是相互分离的存储设备,计算机系统110使用公知的虚拟寻址机制,使得计算机系统100的诸程序表现得似乎它们只是在访问一个大的、单一的存储实体,而不是在访问多个、较小的存储实体(例如主存储器120和DASD设备180)。因此,尽管某些单元被显示为驻留在主存储器120中,本领域的技术人员会认识到这些单元不一定同时都完全包含在主存储器120中。应当注意,“存储器”一词在这里被用来一般性地指计算机系统100的整个虚拟存储器。
网络接口150使得计算机系统100可以向与该计算机系统连接的任何网络发送数据和从其接收数据。该网络可以是一局域网(LAN)、一广域网(WAN),或更特别地,是因特网170。连接到因特网的适当方法包括已知的模拟和/或数字技术,以及将在未来开发的联网技术。可以使用很多不同的网络协议来实施一网络。这些协议是一些专门的计算机程序,其使得诸计算机可以在网络上相互通信。用于在因特网上通信的TCP/IP(传输控制协议/网际协议)是一适当的网络协议的例子。
系统总线160使得数据可以在计算机系统100的各个组件之间传输。尽管计算机系统100被显示为只包含单个主CPU和单个系统总线,本领域的技术人员将认识到,本发明可以使用具有多个CPU和/或多个总线的计算机系统来实施。
在此,应当注意,尽管本发明已经(并将继续)在一个全功能的计算机系统的情境中得到描述,本领域的技术人员将认识到,本发明的各组成部分能够作为以各种形式存在的程序产品而被分发,并且不管实际用于进行分发的信号承载介质的特定类型,本发明都同样适用。信号承载介质的例子包括:可记录类型的介质,例如软盘(如图1中的186)和CD ROM(未示出),以及传输类型的介质,例如数字和模拟通信链路。
在本发明中,计算机系统100可作为一Web服务器而运行。为此,CPU 110执行一Web服务器应用122。假设操作系统134是多任务操作系统,则在计算机系统100中可以同时地运行另一个应用程序136。Web服务器通常连接到因特网170。如已经讨论过的,因特网是一个跨越全球的由数百万台计算机共享的众所周知的计算机网络。在因特网上有很多Web服务器。每个连接到因特网上的计算机都有自己的唯一地址,这使得它可以通过该网络与其他计算机通信。在因特网上可以发送很多不同类型的数据。其例子有电子邮件、程序数据、数字化语音数据、计算机图形、和网页。
现在参照图2,多个计算机系统100A、100B、100C和100D通过网络处理器10连接在一起而形成一服务器群。在图3和图4中以及下面对其中所示结构以及示例性操作的描述中,对网络处理器10作了更充分的描绘和说明。在该群中结合起来的诸计算机系统可以具有不同的被分配的功能。例如,一个计算机系统可以被指定服务于这样的批处理请求,即请求对存储在相关联的DASD中的数据进行数据挖掘。同一群中的另一计算机系统可以被指定为一邮件服务器。另一个计算机系统可以被指定处理对存储在相关联的DASD中的数据的实时请求。还有一个计算机系统可以被指定为一应用服务器,其为该网络中的其他系统提供应用程序,这些应用程序可以被传输以便在客户系统上进行暂时的使用。或者,这些系统可以作为并行的网页宿主系统而提供服务,并且每个
(公开时未提供)
指诸广域网(WAN)。这里描述的本发明在使用“帧”时也同样可以发挥作用,“帧”这一术语与在提到局域网(LAN)时一般采取的用法是一致的。
网络处理器预计将成为基本的网络构件,其与网络的关系就如同CPU与PC的关系。NP所提供的通常功能有实时处理、安全、存储和转发、交换结构、IP包处理以及学习能力。
处理器模型NP包含多个通用处理器和专门逻辑。集成商们正在转向这种设计,以便提供能够以一种及时的和在成本上有竞争力的方式适应变化的可伸缩的、灵活的解决方案。处理器模型NP允许较低集成水平上的分布式处理,因而提供了更高的吞吐量、灵活性和控制。可编程性使得容易移植到新的协议和技术,而无需新的专用集成电路(ASIC)设计。
尽管这种网络处理器在硬件中支持多层转发,它也可以作为只使用L2的交换机而运行,并且在其诸相关应用中披露的最简单形式中,这是它的默认运行模式。每个端口都将被置于一单个域中,这使得该域中的任何一个设备可以与该域中的任何其他设备通信。该装置在L2是可配置的,这使得系统管理员能够配置诸如以下特征:将诸端口分组到不同的域或主干(trunk),配置虚拟LAN(VLAN)网段,或者施加过滤。
下文描述的该装置的某些部分被设计为这样的模块单元,其使用一接口设备或网络处理器(NP)和一控制点(CP)作为其基本构件。当多于两个接口设备子系统连接在一起时,可以使用一可选的交换结构设备。该可选的交换结构设备可以是如美国专利第5,008,878号中所披露的设备,该专利颁发于1991年4月16日,标题为“用于线路和包交换通信流的高速模块式交换设备”(High Speed Modular Switching Apparatus for Circuitand Packet Switched Traffic),其被包含在此处以作为参考,从而便于理解本发明。使用可选的交换结构设备的目的是增加在一个群中支持的服务器系统的数量和/或增加到达或离开所支持的服务器的数据流的速率。人们知道,一单个网络处理器设备可以发挥一基本交换机的作用,并且在以下讨论的某些部分,使用“交换机”一词来指一NP。
该装置可以包括由一NP、一CP和一介质互连机制组成的一单个组件。然而,使用在这里也被称为“可选卡”或“刀片”(blade)的印刷电路板单元,预期可以组装出更复杂的装置。这些印刷电路板单元具有安装于其上的电路单元,并由设置在装置机壳例如服务器计算机系统机壳中的连接器所接纳。本装置考虑到卡可以在各种不同的底架或机壳之间互换,只要在每个底架或机壳上提供了适当的连接器和底板电连接。在很多(如果不是全部)可选卡上可以发现的一基本组件是载体子系统。
在其最简单的形式中,本发明所考虑的接口装置具有一控制点处理器,以及与所述控制点处理器运行地连接的一接口设备。优选地并如这里所披露的,所述接口设备(在这里也被标识为一网络处理器或NP)是一个具有一半导体基片的单一的超大规模集成(VLSI)电路设备或芯片;在所述基片上形成有多个接口处理器;在所述基片上形成有内部指令存储器,其用于存储可由所述诸接口处理器访问的指令;在所述基片上形成有内部数据存储器,其用于存储通过该设备的、可以由所述诸接口处理器访问的数据;以及多个输入/输出端口。这些接口处理器在这里有时也被称为微微处理器或处理单元。所提供的诸端口包括至少一个这样的端口,其将所述内部数据存储器与外部数据存储器连接起来,以及至少两个其他端口,其用于在所述诸接口处理器的指导下,将通过该接口设备的数据与一外部设备或网络相交换。所述控制点与所述接口设备协作,其方法是向所述指令存储器装入这样的指令,这些指令由所述诸接口处理器执行,以指导所述诸数据交换输入/输出端口之间的数据交换和通过所述数据存储器的数据流。也考虑到,这里被描述为由在一单个基片上形成的诸单元所执行的诸功能也可以分配到多个基片上,如当使用一组芯片而不是一单个芯片时那样。
这里披露的网络处理器,除了包含它的组件和组合例如这里描述的服务器群之外,被认为是有创造性的。此外,所述网络处理器被认为在这里描述的其诸单元中具有这里未完全讨论的其他的和进一步的发明。
为了获得更完整的理解,图3示出了接口设备芯片10的框图,该芯片包括一基片和多个集成在所述基片之上的子组件。这些子组件被安排为一上行结构和一下行结构。如这里所用的,“上行”指流入这里所披露的装置的数据流,而“下行”指从该装置向外流出到该装置所服务的一设备或网络的数据流。数据流沿着其各自的结构流动。因而,有一个上行数据流和一个下行数据流。所述上行结构中的子组件包括入队出队调度UP(EDS-UP)逻辑16、多路复用MAC-UP(PPM-UP)14、交换数据移动器UP(SDM-UP)18、系统接口(SIF)20、数据对准串行链路A(DASLA)22、和数据对准串行链路B(DASLB)24。数据对准串行链路在共同未决的美国专利申请第09/330,968号中作了更充分的描述,该申请的申请日为1999年6月11日,标题为“用于数据通信的高速并行/串行链路”(HighSpeed Parallel/Serial Link for Data Communication),其被包含在此处以作为参考,从而便于更充分地理解这里披露的本发明。尽管这里披露的本发明的装置的优选形式使用了DASL链路,本发明考虑到也可以采用其他形式的链路以获得较高的数据流速率,特别是当数据流限于VLSI结构之内时。
下行结构中的子组件包括DASL-A 26、DASL-B 28、SIF 30、SDM-DN32、EDS-DN 34、和PPM-DN 36。该芯片也包括多个内部S-RAM 15和17、通信流消息调度器40、以及嵌入式处理器复合体(EPC)12。一接口设备38由各自的DMU总线35、37连接到PMM 14和36。接口38可以是任何合适的L1电路,如以太网物理层(ENET PHY)、ATM成帧器、SONET上的IP等。接口的类型部分地由该芯片所连接的网络介质或其它设备所决定。多个外部D-RAM和S-RAM可由该芯片使用。
诸箭头示出了在该接口设备中的通常的数据流。例如,从MAC接收到的帧由EDS-UP置于内部数据存储缓冲器。这些帧被识别为或者是一般的数据帧,或者是系统控制引导帧,并被入队到EPC。EPC包含N个协议处理器,其能够并行地处理多达N个帧(N>1)。在如图4所示带有多个协议处理器(P1-Pn)的代表性实施例中,其中两个协议处理器是专用的;一个用于处理引导帧(通用中央处理器或GCH)102,一个用于在控制存储器中建立查找数据(通用树处理器或GTH)104。EPC还包含:调度器108,其将新帧与空闲处理器相匹配;完成单元110,其维护帧的顺序;公共指令存储器(CIM)112,其由所有10个处理器共享;分类器硬件助理(CHA)114,其决定帧的分类,及其协处理器(未示出),其帮助确定帧的开始指令地址;进入和外出数据存储(IEDS)接口116,其控制帧缓冲器的读写操作;控制存储器仲裁器(CMA)118,其允许所述10个处理器共享控制存储器120;Web控制、仲裁和接口(WCAI)122,其允许对诸内部接口设备数据结构以及其他诸硬件结构的调试访问。
引导帧当所述GCH处理器102变为可用时由所述调度器发送给所述GCH处理器102。编码在引导帧中的操作,例如寄存器写、计数器读、MAC配置更改等等,被执行。查找表的更改,例如添加MAC或IP条目,被传递给查找数据处理器104,以便用于控制存储器的操作,例如存储器读和写。某些命令,例如MIB计数器读,要求构建一响应帧,并转发给适当接口设备116上的适当端口。在某些情况下,引导帧为接口设备的外出端进行编码。这些帧被转发给正被查询的接口设备的外出端,所述接口设备然后执行编码的操作,并构建任何适当的响应帧。
数据帧被发派给下一个可用的协议处理器以进行帧查找。帧数据与来自分类器硬件助理(CHA)引擎114的结果一起被传给所述协议处理器。所述CHA分析IP或IPX。其结果决定了树搜索算法和起始公共指令地址(CIA)。所支持的树搜索算法包括固定匹配树(要求精确匹配的固定大小的模式,例如层2 MAC表)、最长前缀匹配树(要求变长匹配的变长模式,例如子网IP转发)、以及软件管理的树(规定或者一范围或者一组比特掩码的两个模式,例如用于过滤器规则的)。
查找是在树搜索引擎(TSE)协处理器的帮助下进行的,该协处理器是每个协议处理器(P1-Pn)的一部分。TSE协处理器执行控制存储器访问,从而释放协议处理器,使其继续执行。控制存储器存储微微代码(picocode)所需要的所有表、计数器和其他数据。控制存储器操作是由控制存储器仲裁器118管理的,该仲裁器在所述10个处理器复合体之间仲裁存储器访问。
帧数据是通过数据存储协处理器(未示出)访问的。数据存储协处理器包含一主数据缓冲器(容纳最高达8个16字节的帧数据段)、一便笺本(scratch pad)数据缓冲器(也容纳最高达8个16字节的帧数据段)以及某些用于数据存储操作的控制寄存器。一旦发现一匹配,则进入帧更改可能包括一VLAN报头插入或覆盖。这种更改不是由接口设备处理器复合体完成的;而是,得出诸硬件标志,由其他进入交换机接口硬件进行所述更改。其他帧更改可以由所述微微代码和所述数据存储协处理器通过修改保持在所述进入数据存储中的帧内容来完成。
外出树搜索支持与进入搜索所支持的算法同样的算法。查找是由TSE协处理器执行的,从而释放协议处理器,使其继续执行。所有控制存储器操作是由控制存储器仲裁器118管理的,该仲裁器在所述10个处理器复体体之间分配存储器访问。外出帧数据是通过数据存储协处理器访问的。如以上讨论的,数据存储协处理器包含一主数据缓冲器(容纳最高达8个16字节的帧数据段)、一便笺本数据缓冲器(也容纳最高达8个16字节的帧数据段)以及某些用于数据存储操作的控制寄存器。一次成功查找的结果包含转发信息,以及在某些情况下的帧更改信息。帧更改可以包括VLAN报头删除、生存时间增加或减少、IP报头校验和重计算、以太网帧CRC覆盖或插入、以及MAC DA/SA覆盖或插入。IP报头校验和是由校验和协处理器产生的。更改不是由接口设备处理器复合体完成的;而是,生成诸硬件标志,由PMM外出硬件进行所述更改。完成后,使用一入队协处理器来帮助构建必要的格式,以便将帧入队到所述EDS外出队列,并将它们发送给完成单元110。完成单元110保证从所述10个协议处理器到馈送到图3所示的外出MAC的EDS外出队列的帧的顺序。所完成的帧最终由PMM外出硬件发送到MAC,并从端口发出。
所述树搜索引擎协处理器提供存储器范围检查,提供非法存储器访问通知,并执行树搜索指令(例如存储器读、写或读-加-写),这些操作是与协议处理器的执行并行执行的。调度器108控制帧到所述10个协议处理器的传递,并管理中断和计时器。完成单元110保证从所述处理器复合体到诸目标端口队列的帧顺序。一丰富的指令集包括条件执行、压缩(对于输入的散列关键字)、条件转移、带符号和无符号操作、前导零计数及其他。
分类器硬件助理引擎114传递每个帧的层2和层3协议报头,并在帧被发派给所述诸协议处理器时将该信息提供给这些帧。控制存储器仲裁器118控制处理器对内部和外部存储器二者的访问。外出帧可以被存储在或者一个外部数据缓冲器(例如DS0)中或者两个外部数据缓冲器中(图3中的44)。每个缓冲器可以由一对2M×16位×4存储体的DDR DRAM构成(存储最高达256K的64字节帧),或者由一对4M×16位×4存储体的DDR DRAM构成(存储最高达512K的64字节帧)。选择单个外部数据缓冲器(例如DS0)用于2.28Mbps,或者添加第二个缓冲器(例如DS1)以支持4.57Mbps的层2和层3交换。添加第二缓冲器可以提高性能,但它不增加帧容量。所述外部数据缓冲器接口以133MHz的时钟速率和266MHz的数据选通运行,并支持可配置的CAS延迟和驱动强度。
固定帧更改包括在进入方向的VLAN标志插入,在外出方向的VLAN标志删除、生存期增加/减少、以太网CRC覆盖/插入、和MAC DA/SA覆盖/插入。
端口镜像允许一个接收端口和一个发送端口被复制到一个系统指定的观察端口,而不使用协议处理器资源。被镜像的接口设备端口被配置为添加帧和交换机控制数据。一单独的数据路径允许帧直接入队到进入交换机接口。
所述网络处理器运行在从所述控制点处理器动态装入诸微微处理器的诸规则之下。这些规则可以在运行中改变,以适应变化的条件。本发明中,正是使用网络处理器的这种功能来产生良好效果的。
下面是对已经实施的诸队列管理策略的有些宽泛的讨论。这一讨论是要表明可用于防止DOS攻击的一类过滤规则组的能力,并将既包括对已知的和通用的技术的描述,也包括对专有技术的描述。
如上文简单提到的,人们已开发出一些方法,以便控制流经一数据路径交换机例如一NP的通信流,从而提高该交换机被使用于其中的网络的性能。特别地,使用了一种被称为RED(随机早期丢弃或检测)的传统方法。这一传统方法通常由一入队机制所使用,以控制通过一相应队列的通信流。
在称为时期(epoch)的一短暂期间结束时,所述入队机制确定该时期中该队列的队列水平。应注意,所确定的队列水平可能是该时期的平均队列水平。此外,所确定的队列水平可能是该队列是其一部分的存储器资源的总水平。然后确定所述队列水平是否超过了一最小阈值。如果所述队列水平未超过所述最小阈值,则设置一传统的传输比例。所述传输比例决定在下一时期中将传输的包的比例。传统的丢弃比例确定将被丢弃的包的比例。所述传统的丢弃比例等于1减去所述传统的传输比例。因此1的传输比例表明所有的包都应被传输,而没有任何包被丢弃。
如果确定了所述队列水平超过所述最小阈值,则接着确定是否所述时期的所述队列水平超过一最大阈值。如果所述队列水平大于所述最大阈值,则所述传统的传输比例被设置为0,而所述传统的丢弃比例被设置为1。如果所述队列水平没有超过所述最大阈值,则所述传统的丢弃比例被设置为与前一个时期的队列水平除以一最大可能的队列水平成比例,或者,作为另一种选择,与所述队列水平的某种其他线性函数成比例。这样,所述传统丢弃比例与所占用的队列的比例或所述队列水平的某种其他线性函数成比例。所述传统的传输比例也被设置为与1减去所述传统的丢弃比例成比例。然后,利用所述传统的传输比例和所述传统的丢弃比例,在下一个时期中随机地丢弃包。因此,当所述队列水平低于所述最小阈值时,在下一个时期中,所有的包都将被所述入队机制传输给所述队列。当所述队列水平大于一最大阈值时,则在下一个时期中,所有的包都将被所述入队机制丢弃,或入队到一丢弃队列中。当所述队列水平处于所述最小阈值和所述最大阈值之间时,则由所述入队机制丢弃的包的比例与所占用队列的比例或所述队列水平的某种其他线性函数成比例。因此,所述队列水平越高,则被丢弃的包的比例也越高。此外,可以向被丢弃的包的发送者提供一通知,其使得发送者暂停发送其他的包一段时间。被选择丢弃的各个包也可以是随机选择的。例如,对于每一个包,所述入队机制可以产生一个0和1之间的随机数。将所述随机数与所述传统的丢弃比例相比较。如果所述随机数小于或等于所述传统的丢弃比例,则该包被丢弃。否则,该包被传输给所述队列。这一基于传输比例来丢弃包的过程持续进行,直到确定所述时期已经结束。当所述时期结束时,该方法再次开始为下一个时期确定传统的传输比例,并在下一个时期,根据所述传统的传输比例而丢弃包。
因为包可以根据队列水平而被丢弃,所以RED方法允许对通过一交换机的通信流进行某种控制。结果,与不具有用来在队列变满之前丢弃包的任何机制的一交换机相比,由于丢尾(droptail)而丢弃的包更少。在由于队列已满而必须丢弃包的时候,就会发生丢尾。结果,在确定是否丢弃包的时候,就没有机会考虑该包的优先级。此外,在一些情况下,该方法可以减少同时向该交换机发送包的诸主机。这是由于可以基于所述传统的传输比例而随机地丢弃包,而不是当所述队列水平处于或接近所述最大队列水平时丢弃所有的包。因此,比之不利用方法RED的一交换机,即只是当其缓冲器资源耗尽时简单地丢弃以后到达的包的一交换器,该交换机的性能得到提高。
虽然RED方法改善了交换机的运行,但本领域的技术人员可以很容易地认识到,在很多情况下,RED方法不能适当地控制通信流。尽管包或信元可以在队列变满之前被丢弃,主机在某些情况下仍然倾向于变得同步起来。特别对于中等或更高等级的通信流拥塞更是这样。所述传统的传输比例是基于所述队列水平。然而,该队列水平可能无法表明该交换机的状态。例如,低于所述最低阈值的一队列水平可能是由于低水平的通信流(少量的包通过该设备)。然而,一低队列水平也可能是由于在前一时期因为很高的通信流量而发生的大量丢弃。如果所述低队列水平是由于低的通信流水平,则增加所述传统的传输比例是适宜的。如果所述低队列水平是由于高的丢弃比例,则增加所述传统的传输比例可能是不合需要的。传统的RED方法未在这些情况之间作出区分。结果,所述传统的传输比例可能在不应当增加的时候增加。当发生这种情况时,队列会很快充满。然后,所述传输比例将被降低,而所述队列水平将下降。当所述队列水平下降后,所述传输比例将增加,而队列会变得再次充满。该交换机因而开始在队列充满和队列清空之间振荡。结果,该交换机的平均使用率变得很低,而使用该交换机的网络的性能则受到损害。
另一种方法被称为BLUE。BLUE方法不仅考虑队列水平,而且考虑传输速率和提供速率。提供速率是包或信元被提供给所述入队机制以提供给相应队列的速率。下面使用一入队机制和队列来描述BLUE方法。对于刚刚结束的时期,确定该队列的队列水平、由所述入队机制提供给该队列的传输比率、以及所述提供速率。所述提供速率是包被提供给所述入队机制的速率。因而,所述提供速率可能来自一个或多个端口所提供的通信流。
然后确定是否发生包丢失或队列水平大于某个阈值。这两个事件都表明应该增加所述丢弃比例。如果是这样,则所述丢弃比例增加一第一常量,该常量可以经验地确定。这样,所述传输比例,其等于1减去所述丢弃比例,就减少了。如果确定所述丢弃比例不应该增加,则确定所述丢弃比例是否应该减少。如果所述阈值水平低或者如果所述提供速率低,则所述丢弃比例应该减少。如果所述丢弃比例应该减少,则这是通过从中减少一第二常量完成的,该常量也可以经验地确定。然后,或者使用该丢弃比例(如果已改变)或者使用旧的丢弃比例,来确定在下一个时期内将传输给该队列的包的比例。
(公开时没提供)
在步骤200,监视各时期进入的包的通信流。在步骤202,应用各算法规则计算在相继的各时期中的通信流速率的一次导数(在图中,变化率或ROC)。然后,在步骤204,将计算出的变化率与预定的诸边界条件相比较。如果进入的包通信流的变化率超过已设立的一边界条件(由被访问的服务器资源的数据流处理功能设置),则在步骤206修改所述NP规则组,以增加丢弃进入的包,或者将包重定向到一预定的可接受的替代网络资源。如果进入的包通信流的变化率低于所述上边界条件,则系统返回到步骤202。在步骤206修改所述规则组之后,系统返回到步骤202以计算导数,并且如果在步骤204确定进入的包通信流的变化率下降到低于第二边界条件,则在步骤206,NP规则组被修改,以通过减少包的丢弃来恢复正常的数据流。
拒绝服务攻击的成功也可以由来自被访问的网络资源的包(即外出的包)通信流的迅速减少来表明,这显示出该资源确实被淹没了。因此,图6中的步骤301中的监视和步骤303中的计算提供了另一种保护。在步骤305确定外出的包通信流的变化率是否满足已设立的一边界条件。如果它低于该边界条件,如在步骤307所确定的那样,则在步骤309修改所述NP规则组,以增加进入的包的丢弃或将进入的包重定向到一预定的可接受的替代网络资源。如果外出包通信流的变化率高于所述边界条件,则系统返回到步骤303。在步骤309修改所述规则组之后,系统返回到步骤303以计算导数,并且当外出包通信流的变化率上升到超过第二边界条件时,则如在步骤311那样,修改NP规则组,以通过减少丢弃来恢复正常的数据流。应当注意的是,图5中206处的更一般的步骤“修改NP规则”可以包括图6所示的更具体的诸步骤或其他相当的诸步骤。
在附图和说明书中已经提出了本发明的一优选实施例,并且,尽管使用了特定的术语,如此给出的描述只是在一般性的和描述性的意义上来使用术语的,而不是为了限制的目的。

Claims (36)

1.一种用于防止对服务器群集的拒绝服务攻击的装置,包括:
具有至少一个计算机系统的网络资源服务器,所述计算机系统包括一中央处理单元和服务器存储器;以及
与所述网络资源服务器连接的网络处理器,该网络处理器包括:
多个接口处理器;
用于存储所述接口处理器可访问的指令的指令存储器;
用于存储经过所述网络处理器而去往或离开所述网络资源服务器并可由所述接口处理器访问的数据的数据存储器;以及
多个输入/输出端口;
所述输入/输出端口中的一个端口适合于在所述接口处理器的指导下与一外部网络交换经过所述网络处理器的数据;
所述输入/输出端口中的其他至少一个端口适合于与所述网络资源服务器交换经过所述网络处理器的数据;
响应于由所述接口处理器执行已装入所述指令存储器中的指令,所述网络处理器和所述网络资源服务器协作来指导在所述输入/输出端口之间的数据交换以及经过所述数据存储器去往和离开所述网络资源服务器的数据流;
所述网络处理器进一步包括至少一个速率监视器,用于监视其地址为所述网络资源服务器的数据流的速率,至少一个所述接口处理器包括一个用来计算数据流速率对时间的导数以确定数据流的变化率的组件,以及至少一个修改器,用于响应于所确定的变化率而修改已装入所述指令存储器中的指令。
2.根据权利要求1的装置,其中所述至少一个接口处理器进一步包括用于将所述确定的变化率与至少一个预定的边界相比较的装置,其中当所述变化率与所述至少一个预定的边界具有一预先指定的关系时,所述修改器修改所述指令。
3.根据权利要求1的装置,其中所述网络处理器包括一半导体基片,且进一步地,其中所述诸接口处理器、所述指令存储器、所述数据存储器和所述输入/输出端口形成在所述半导体基片上。
4.根据权利要求1的装置,其中所述网络处理器适合于处理通信协议,并与所述网络资源服务器交换将由所述计算机系统处理的应用数据。
5.根据权利要求4的装置,其中所述网络资源服务器具有服务于多种目的的多个计算机系统,并且所述网络处理器将应用数据指引到所述计算机系统中的适当的一个,以便由此根据该计算机系统的适当目的来运用所述数据。
6.根据权利要求4的装置,其中所述网络资源服务器具有服务于一共同目的的多个计算机系统,并且所述网络处理器将应用数据指引到所述计算机系统中的一些不同计算机系统,以便以一预定的流程在所述计算机系统之间运用所述数据。
7.根据权利要求1的装置,其中所述接口处理器的数量超过4个。
8.根据权利要求2的装置,其中所述网络处理器的至少一个速率监视器监视流向所述网络资源服务器的进入的数据流,并且当进入的数据的变化率高于一预定边界时,所述至少一个修改器增加丢弃进入的数据。
9.根据权利要求2的装置,其中当进入的数据的变化率低于一第二预定边界时,所述网络处理器的至少一个修改器减少进入的数据的丢弃比例。
10.一种用于防止对服务器群集的拒绝服务攻击的装置,包括:
包括至少一个计算机系统的网络资源服务器,所述计算机系统包括一中央处理单元和服务器存储器;以及
与所述网络资源服务器连接的网络处理器,包括:
多个接口处理器;
用于存储所述接口处理器可访问的指令的指令存储器;
用于存储经过所述网络处理器而去往或离开所述网络资源服务器并可由所述接口处理器访问的数据的数据存储器;以及
多个输入/输出端口;
所述输入/输出端口中的一个端口适合于在所述接口处理器的指导下与一外部网络交换经过所述网络处理器的数据;
所述输入/输出端口中的其他至少一个端口适合于与所述网络资源服务器交换经过所述网络处理器的数据;
响应于由所述接口处理器执行已装入所述指令存储器中的指令,所述网络处理器和所述网络资源服务器协作来指导在所述输入/输出端口之间的数据交换以及经过所述数据存储器去往和离开所述网络资源服务器的数据流;
所述网络处理器进一步包括至少一个速率监视器,用于监视流向所述网络资源服务器的数据流速率,至少一个所述接口处理器包括一个用来计算数据流速率对时间的导数以确定数据流的变化率的组件,以及至少一个修改器,用于响应于所确定的变化率而修改已装入所述指令存储器中的指令。
11.根据权利要求10的装置,其中所述至少一个接口处理器进一步包括用于将所述确定的变化率与至少一个预定的边界相比较的装置,其中当所述变化率与所述至少一个预定的边界具有一预先指定的关系时,所述修改器修改所述指令。
12.根据权利要求10的装置,其中所述网络处理器包括一半导体基片,并且进一步地,其中所述接口处理器、所述指令存储器、所述数据存储器和所述输入/输出端口形成在所述半导体基片上。
13.根据权利要求10的装置,其中所述网络处理器适合于处理通信协议,并与所述网络资源服务器交换将由所述服务器处理的应用数据。
14.根据权利要求12的装置,其中所述网络资源服务器包括服务于多种目的的多个计算机系统,并且所述网络处理器将应用数据指引到所述系统中的适当的一个,以便由此根据该系统的适当目的来运用所述数据。
15.根据权利要求12的装置,其中所述网络资源服务器包括服务于一共同目的的多个计算机系统,并且所述网络处理器将应用数据指引到所述计算机系统中的一些不同计算机系统,以便以一预定的流程在所述计算机系统之间运用所述数据。
16.根据权利要求10的装置,其中所述接口处理器的数量超过4个。
17.根据权利要求11的装置,其中所述网络处理器的至少一个速率监视器监视流向所述网络资源服务器的进入的数据流,并且当进入的数据的变化率高于一预定边界时,所述修改器增加丢弃进入的数据。
18.根据权利要求11的装置,其中当进入的数据的变化率低于一第二预定边界时,所述网络处理器的所述修改器减少进入的数据的丢弃比例。
19.一种用于防止对服务器群集的拒绝服务攻击的装置,包括:
具有至少一个计算机系统的网络资源服务器,所述计算机系统包括一中央处理单元和服务器存储器;以及
与所述网络资源服务器连接的网络处理器,包括:
多个接口处理器;
用于存储所述接口处理器可访问的指令的指令存储器;
用于存储经过所述网络处理器而去往或离开所述网络资源服务器并可由所述接口处理器访问的数据的数据存储器;以及
多个输入/输出端口;
所述输入/输出端口中的一个端口适合于在所述接口处理器的指导下与一外部网络交换经过所述网络处理器的数据;
所述输入/输出端口中的其他至少一个端口适合于与所述网络资源服务器交换经过所述网络处理器的数据;
响应于由所述接口处理器执行已装入所述指令存储器中的指令,所述网络处理器和所述网络资源服务器协作来指导数据在所述输入/输出端口之间的交换以及经过所述数据存储器去往和离开所述网络资源服务器的数据流;
所述网络处理器进一步包括至少一个速率监视器,用于监视从所述网络资源服务器流出的数据流速率,至少一个所述接口处理器包括一个用来计算数据流速率对时间的导数以确定数据流的变化率的组件,以及至少一个修改器,用于响应于所确定的变化率而修改已装入所述指令存储器中的指令。
20.根据权利要求19的装置,其中所述至少一个接口处理器进一步包括用于将所述确定的变化率与至少一个预定的边界相比较的装置,其中当所述变化率与所述至少一个预定的边界具有一预先指定的关系时,所述修改器修改所述指令。
21.根据权利要求19的装置,其中所述网络处理器包括一半导体基片,且进一步地,其中所述接口处理器、所述指令存储器、所述数据存储器和所述输入/输出端口形成在所述半导体基片上。
22.根据权利要求19的装置,其中所述网络处理器适合于处理通信协议,并与所述网络资源服务器交换将由所述网络资源服务器处理的应用数据。
23.根据权利要求22的装置,其中所述网络资源服务器具有服务于多种目的的多个计算机系统,且其中所述网络处理器将应用数据指引到所述计算机系统中的适当的一个,以便由此根据该计算机系统的适当目的来运用所述数据。
24.根据权利要求22的装置,其中所述网络资源服务器具有服务于一共同目的的多个计算机系统,并且所述网络处理器将应用数据引导到所述计算机系统中的一些不同计算机系统中,以便以一预定的流程在所述计算机系统之间运用所述数据。
25.根据权利要求19的装置,其中所述接口处理器的数量超过4个。
26.根据权利要求20的装置,其中所述至少一个速率监视器监视离开所述网络资源服务器的外出的数据流,其中当外出的数据的变化率低于一预定边界时,所述至少一个修改器增加丢弃进入的数据。
27.根据权利要求20的装置,其中当外出的数据的变化率高于一第二预定边界时,所述网络处理器的所述至少一个修改器减少进入的数据的丢弃比例。
28.一种用于防止对服务器群集的拒绝服务攻击的方法,包括下列步骤:
通过网络处理器在网络资源服务器和数据网络之间传递数据的位流;
监视经过所述网络处理器的数据的数据流速率;
计算所述数据流速率的一次导数,以确定所述数据流速率的变化率;以及
基于所述数据流速率的所述变化率,选择性地丢弃流向所述网络资源服务器的数据。
29.根据权利要求28的方法,进一步包括将所述数据流速率的变化率与至少一个预定的边界相比较,其中当所述变化率具有与所述至少一个预定边界的一预先指定的关系时,进行所述选择性的丢弃。
30.根据权利要求28的方法,其中所述监视步骤包括监视流向所述网络资源服务器的进入的数据流速率。
31.根据权利要求29的方法,其中所述选择性地丢弃数据的步骤包括当已确定进入的数据流的变化率高于一预定的边界时,增加丢弃流向所述网络资源服务器的数据。
32.根据权利要求29的方法,其中所述选择性地丢弃数据的步骤包括当已确定进入的数据流的变化率低于一预定的边界时,减少丢弃流向所述网络资源服务器的数据。
33.根据权利要求28的方法,其中所述监视步骤包括监视离开所述网络资源服务器的外出的数据流速率。
34.根据权利要求33的方法,其中所述选择性地丢弃数据的步骤包括当已确定外出的数据流的变化率低于一预定的边界时,增加丢弃流向所述网络资源服务器的数据。
35.根据权利要求33的方法,其中所述选择性地丢弃数据的步骤包括当已确定外出的数据流的变化率高于一预定的边界时,减少丢弃流向所述网络资源服务器的数据。
36.一种用于防止对服务器群集的拒绝服务攻击的与至少一个网络资源服务器和一外部网络连接的网络处理器,包括:
多个接口处理器;
用于存储可由所述接口处理器访问的指令的指令存储器;
用于存储经过所述网络处理器而去往或离开所述网络资源服务器并可由所述接口处理器访问的数据的数据存储器;以及多个输入/输出端口;
所述输入/输出端口中的一个端口适合于在所述接口处理器的指导下与一外部网络交换经过所述网络处理器的数据;
所述输入/输出端口中的其他至少一个端口适合于与所述网络资源服务器交换经过所述网络处理器的数据;
响应于由所述接口处理器执行已装入所述指令存储器中的指令,所述网络处理器和所述网络资源服务器协作来指导数据在所述输入/输出端口之间的交换以及经过所述数据存储器去往和离开所述网络资源服务器的数据流;
所述网络处理器进一步包括至少一个速率监视器,用于监视其地址为所述网络资源服务器的数据流速率,至少一个所述接口处理器包括一个用来计算数据流速率对时间的导数以确定数据流的变化率的组件,以及至少一个修改器,用于响应于所确定的变化率而修改已装入所述指令存储器中的指令。
CNB028164792A 2001-07-26 2002-07-19 一种防止对服务器群集的拒绝服务攻击的装置及其方法 Expired - Fee Related CN1318852C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/915,611 US7047303B2 (en) 2001-07-26 2001-07-26 Apparatus and method for using a network processor to guard against a “denial-of-service” attack on a server or server cluster
US09/915,611 2001-07-26

Publications (2)

Publication Number Publication Date
CN1545624A CN1545624A (zh) 2004-11-10
CN1318852C true CN1318852C (zh) 2007-05-30

Family

ID=25435998

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028164792A Expired - Fee Related CN1318852C (zh) 2001-07-26 2002-07-19 一种防止对服务器群集的拒绝服务攻击的装置及其方法

Country Status (7)

Country Link
US (1) US7047303B2 (zh)
EP (1) EP1417498A4 (zh)
JP (1) JP3900497B2 (zh)
KR (1) KR100586296B1 (zh)
CN (1) CN1318852C (zh)
TW (1) TW576044B (zh)
WO (1) WO2003010548A1 (zh)

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985431B1 (en) * 1999-08-27 2006-01-10 International Business Machines Corporation Network switch and components and method of operation
US7120931B1 (en) * 2000-08-31 2006-10-10 Cisco Technology, Inc. System and method for generating filters based on analyzed flow data
US7301897B2 (en) * 2001-11-30 2007-11-27 Motorola, Inc. Method and apparatus for managing congestion in a data communication network
AU2003212910A1 (en) * 2002-02-07 2003-09-02 University Of Massachusetts Probabalistic packet marking
US20030195922A1 (en) * 2002-04-10 2003-10-16 Alcatel SNMP trap and inform shaping mechanism
WO2004006115A1 (en) * 2002-07-02 2004-01-15 Netscaler, Inc System, method and computer program product to avoid server overload by controlling http denial of service (dos) attacks
US7337470B2 (en) * 2002-08-23 2008-02-26 International Business Machines Corporation Method for minimizing denial of service attacks on network servers
US8201252B2 (en) * 2002-09-03 2012-06-12 Alcatel Lucent Methods and devices for providing distributed, adaptive IP filtering against distributed denial of service attacks
US7467408B1 (en) * 2002-09-09 2008-12-16 Cisco Technology, Inc. Method and apparatus for capturing and filtering datagrams for network security monitoring
US7173334B2 (en) * 2002-10-11 2007-02-06 Chien-Min Sung Diamond composite heat spreader and associated methods
US7274666B2 (en) * 2003-04-01 2007-09-25 International Business Machines Corporation Method and system for managing traffic within a data communication network
US7346700B2 (en) * 2003-04-07 2008-03-18 Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. System and method for managing e-mail message traffic
US7464409B2 (en) * 2003-06-27 2008-12-09 University Of Florida Research Foundation, Inc. Perimeter-based defense against data flooding in a data communication network
US7272854B2 (en) * 2003-06-30 2007-09-18 Architecture Technology Corporation Aliasing to prevent attacks on messaging services
US7386719B2 (en) * 2003-07-29 2008-06-10 International Business Machines Corporation System and method for eliminating viruses at a web page server
US20050028010A1 (en) * 2003-07-29 2005-02-03 International Business Machines Corporation System and method for addressing denial of service virus attacks
GB2406748A (en) * 2003-09-30 2005-04-06 Nokia Corp Digital broadcast receiver module comprising a loop antenna amplifier and demodulator and means for connecting the module to a mobile terminal
US7436770B2 (en) * 2004-01-21 2008-10-14 Alcatel Lucent Metering packet flows for limiting effects of denial of service attacks
US7500012B2 (en) * 2004-03-31 2009-03-03 International Business Machines Corporation Method for controlling dataflow to a central system from distributed systems
US7363513B2 (en) * 2004-04-15 2008-04-22 International Business Machines Corporation Server denial of service shield
US7966661B2 (en) * 2004-04-29 2011-06-21 Microsoft Corporation Network amplification attack mitigation
US7773521B2 (en) * 2004-04-30 2010-08-10 Emc Corporation Storage switch traffic bandwidth control
US8203941B2 (en) * 2004-05-28 2012-06-19 Hewlett-Packard Development Company, L.P. Virus/worm throttle threshold settings
CN100362802C (zh) * 2004-06-29 2008-01-16 华为技术有限公司 一种抵御拒绝服务攻击的方法
US7478429B2 (en) * 2004-10-01 2009-01-13 Prolexic Technologies, Inc. Network overload detection and mitigation system and method
US7206845B2 (en) * 2004-12-21 2007-04-17 International Business Machines Corporation Method, system and program product for monitoring and controlling access to a computer system resource
US7620975B2 (en) * 2005-02-17 2009-11-17 Cisco Technology, Inc. Internal routing protocol support for distributing encryption information
US20060288411A1 (en) * 2005-06-21 2006-12-21 Avaya, Inc. System and method for mitigating denial of service attacks on communication appliances
US7784098B1 (en) * 2005-07-14 2010-08-24 Trend Micro, Inc. Snapshot and restore technique for computer system recovery
US8161548B1 (en) 2005-08-15 2012-04-17 Trend Micro, Inc. Malware detection using pattern classification
US7992208B2 (en) * 2005-09-19 2011-08-02 University Of Maryland Detection of nonconforming network traffic flow aggregates for mitigating distributed denial of service attacks
US7831971B2 (en) * 2005-10-24 2010-11-09 International Business Machines Corporation Method and apparatus for presenting a visualization of processor capacity and network availability based on a grid computing system simulation
US8161549B2 (en) 2005-11-17 2012-04-17 Patrik Lahti Method for defending against denial-of-service attack on the IPV6 neighbor cache
US7796590B1 (en) * 2006-02-01 2010-09-14 Marvell Israel (M.I.S.L.) Ltd. Secure automatic learning in ethernet bridges
WO2008095340A1 (en) * 2007-02-06 2008-08-14 Huawei Technologies Co., Ltd. Systems and methods for malware-contaminated traffic management
US8341727B2 (en) * 2007-03-09 2012-12-25 Se Cure 64 Software Corporation Method and system for protecting a computer system from denial-of-service attacks and other deleterious resource-draining phenomena related to communications
US8310923B1 (en) 2007-03-27 2012-11-13 Amazon Technologies, Inc. Monitoring a network site to detect adverse network conditions
US7936670B2 (en) * 2007-04-11 2011-05-03 International Business Machines Corporation System, method and program to control access to virtual LAN via a switch
US7788402B1 (en) 2007-05-03 2010-08-31 Xilinx, Inc. Circuit for modification of a network packet by insertion or removal of a data segment
US7792117B1 (en) * 2007-05-03 2010-09-07 Xilinx, Inc. Method for simulating a processor of network packets
US7784014B1 (en) 2007-05-03 2010-08-24 Xilinx, Inc. Generation of a specification of a network packet processor
US8284772B1 (en) 2007-05-03 2012-10-09 Xilinx, Inc. Method for scheduling a network packet processor
US7990867B1 (en) 2007-05-03 2011-08-02 Xilinx, Inc. Pipeline for processing network packets
US8015320B2 (en) * 2007-08-28 2011-09-06 Futurewei Technologies, Inc. Load distribution and redundancy using tree aggregation
US8125660B2 (en) * 2008-03-28 2012-02-28 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for processing page description languages
JP2009253927A (ja) * 2008-04-11 2009-10-29 Sony Corp ネットワーク管理装置とネットワーク管理方法および監視システム
US8213308B2 (en) 2008-09-11 2012-07-03 Juniper Networks, Inc. Methods and apparatus for defining a flow control signal related to a transmit queue
US8154996B2 (en) 2008-09-11 2012-04-10 Juniper Networks, Inc. Methods and apparatus for flow control associated with multi-staged queues
CN101674293B (zh) * 2008-09-11 2013-04-03 阿里巴巴集团控股有限公司 一种分布式应用中处理非正常请求的方法及系统
US8254255B2 (en) 2008-12-29 2012-08-28 Juniper Networks, Inc. Flow-control in a switch fabric
US20110138463A1 (en) * 2009-12-07 2011-06-09 Electronics And Telecommunications Research Institute Method and system for ddos traffic detection and traffic mitigation using flow statistics
US9264321B2 (en) 2009-12-23 2016-02-16 Juniper Networks, Inc. Methods and apparatus for tracking data flow based on flow state values
US9065773B2 (en) 2010-06-22 2015-06-23 Juniper Networks, Inc. Methods and apparatus for virtual channel flow control associated with a switch fabric
US9660940B2 (en) 2010-12-01 2017-05-23 Juniper Networks, Inc. Methods and apparatus for flow control associated with a switch fabric
US9032089B2 (en) 2011-03-09 2015-05-12 Juniper Networks, Inc. Methods and apparatus for path selection within a network based on flow duration
US8811183B1 (en) 2011-10-04 2014-08-19 Juniper Networks, Inc. Methods and apparatus for multi-path flow control within a multi-stage switch fabric
KR20130093848A (ko) * 2012-01-27 2013-08-23 한국전자통신연구원 멀티 계층 프로토콜 부하 분산을 위한 패킷 처리 장치
US9130826B2 (en) * 2013-03-15 2015-09-08 Enterasys Networks, Inc. System and related method for network monitoring and control based on applications
KR20140126190A (ko) * 2013-04-22 2014-10-30 삼성전자주식회사 프로세서의 긴 라우팅 처리를 지원하는 메모리 장치, 그 메모리 장치를 이용한 스케줄링 장치 및 방법
US8966074B1 (en) * 2013-09-13 2015-02-24 Network Kinetix, LLC System and method for real-time analysis of network traffic
US9929858B2 (en) * 2015-09-21 2018-03-27 Nxp B.V. Method and system for detecting fault attacks
CN105429936B (zh) * 2015-10-21 2018-10-09 北京交通大学 专网路由器内存储资源恶意占用抵御方法及装置
US10476673B2 (en) 2017-03-22 2019-11-12 Extrahop Networks, Inc. Managing session secrets for continuous packet capture systems
US9967292B1 (en) 2017-10-25 2018-05-08 Extrahop Networks, Inc. Inline secret sharing
US10389574B1 (en) 2018-02-07 2019-08-20 Extrahop Networks, Inc. Ranking alerts based on network monitoring
US10270794B1 (en) 2018-02-09 2019-04-23 Extrahop Networks, Inc. Detection of denial of service attacks
US10411978B1 (en) 2018-08-09 2019-09-10 Extrahop Networks, Inc. Correlating causes and effects associated with network activity
US10965702B2 (en) * 2019-05-28 2021-03-30 Extrahop Networks, Inc. Detecting injection attacks using passive network monitoring
US11388072B2 (en) 2019-08-05 2022-07-12 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10742530B1 (en) 2019-08-05 2020-08-11 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10742677B1 (en) 2019-09-04 2020-08-11 Extrahop Networks, Inc. Automatic determination of user roles and asset types based on network monitoring
CN111092750B (zh) * 2019-11-22 2022-12-27 苏州浪潮智能科技有限公司 一种基于智能监控的交换机管理网络系统和白盒交换机
CN113225253B (zh) * 2020-01-21 2022-08-09 华为技术有限公司 一种报文转发方法及装置
US11310256B2 (en) 2020-09-23 2022-04-19 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11463466B2 (en) 2020-09-23 2022-10-04 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11349861B1 (en) 2021-06-18 2022-05-31 Extrahop Networks, Inc. Identifying network entities based on beaconing activity
US11296967B1 (en) 2021-09-23 2022-04-05 Extrahop Networks, Inc. Combining passive network analysis and active probing
US11843606B2 (en) 2022-03-30 2023-12-12 Extrahop Networks, Inc. Detecting abnormal data access based on data similarity

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5581703A (en) * 1993-06-29 1996-12-03 International Business Machines Corporation Method and apparatus for reserving system resources to assure quality of service
US5442624A (en) * 1993-10-29 1995-08-15 At&T Corp. Dynamic access control for an ATM network
US5606668A (en) * 1993-12-15 1997-02-25 Checkpoint Software Technologies Ltd. System for securing inbound and outbound data packet flow in a computer network
US5751964A (en) * 1995-09-12 1998-05-12 International Business Machines Corporation System and method for automatic determination of thresholds in network management
US5826014A (en) * 1996-02-06 1998-10-20 Network Engineering Software Firewall system for protecting network elements connected to a public network
US5796633A (en) * 1996-07-12 1998-08-18 Electronic Data Systems Corporation Method and system for performance monitoring in computer networks
US6067620A (en) * 1996-07-30 2000-05-23 Holden; James M. Stand alone security device for computer networks
US5864535A (en) * 1996-09-18 1999-01-26 International Business Machines Corporation Network server having dynamic load balancing of messages in both inbound and outbound directions
US5991881A (en) * 1996-11-08 1999-11-23 Harris Corporation Network surveillance system
US5805801A (en) * 1997-01-09 1998-09-08 International Business Machines Corporation System and method for detecting and preventing security
US6108310A (en) * 1997-09-12 2000-08-22 Hewlett-Packard Company Display of network traffic attributes based on frequency distribution
US6048856A (en) * 1997-12-17 2000-04-11 Novo Nordisk A/S Heterocyclic compounds
US6088804A (en) * 1998-01-12 2000-07-11 Motorola, Inc. Adaptive system and method for responding to computer network security attacks
US6738814B1 (en) * 1998-03-18 2004-05-18 Cisco Technology, Inc. Method for blocking denial of service and address spoofing attacks on a private network
US6233618B1 (en) * 1998-03-31 2001-05-15 Content Advisor, Inc. Access control of networked data
US6725378B1 (en) * 1998-04-15 2004-04-20 Purdue Research Foundation Network protection for denial of service attacks
US6182227B1 (en) * 1998-06-22 2001-01-30 International Business Machines Corporation Lightweight authentication system and method for validating a server access request
US6178460B1 (en) * 1998-06-30 2001-01-23 International Business Machines Corporation Method of efficiently retrieving data on a computer network by monitoring performance of mirrored network locations
JP2002526830A (ja) * 1998-09-28 2002-08-20 アーガス システムズ グループ,インク. コンパートメント化された信用コンピュータオペレーティングシステム
US6687732B1 (en) * 1998-09-28 2004-02-03 Inktomi Corporation Adaptive traffic bypassing in an intercepting network driver
US6499107B1 (en) * 1998-12-29 2002-12-24 Cisco Technology, Inc. Method and system for adaptive network security using intelligent packet analysis
US6463454B1 (en) * 1999-06-17 2002-10-08 International Business Machines Corporation System and method for integrated load distribution and resource management on internet environment
AU6091400A (en) * 1999-07-13 2001-01-30 Alteon Web Systems, Inc. Apparatus and method to minimize congestion in an output queuing switch
US6901517B1 (en) * 1999-07-16 2005-05-31 Marconi Communications, Inc. Hardware based security groups, firewall load sharing, and firewall redundancy
US6735702B1 (en) * 1999-08-31 2004-05-11 Intel Corporation Method and system for diagnosing network intrusion
US6742123B1 (en) * 1999-09-10 2004-05-25 Sun Microsystems, Inc. Apparatus and methods for preventing denial of service attacks
US6775657B1 (en) * 1999-12-22 2004-08-10 Cisco Technology, Inc. Multilayered intrusion detection system and method
US6675211B1 (en) * 2000-01-21 2004-01-06 At&T Wireless Services, Inc. System and method for adjusting the traffic carried by a network
US6816910B1 (en) * 2000-02-17 2004-11-09 Netzentry, Inc. Method and apparatus for limiting network connection resources
US20020108059A1 (en) * 2000-03-03 2002-08-08 Canion Rodney S. Network security accelerator
US6904459B1 (en) * 2000-03-14 2005-06-07 Microsoft Corporation Methods and systems for preventing socket flooding during denial of service attacks
US6751668B1 (en) * 2000-03-14 2004-06-15 Watchguard Technologies, Inc. Denial-of-service attack blocking with selective passing and flexible monitoring
US6671725B1 (en) * 2000-04-18 2003-12-30 International Business Machines Corporation Server cluster interconnection using network processor
US6965922B1 (en) * 2000-04-18 2005-11-15 International Business Machines Corporation Computer system and method with internal use of networking switching
US6930978B2 (en) * 2000-05-17 2005-08-16 Deep Nines, Inc. System and method for traffic management control in a data transmission network
US6789203B1 (en) * 2000-06-26 2004-09-07 Sun Microsystems, Inc. Method and apparatus for preventing a denial of service (DOS) attack by selectively throttling TCP/IP requests
US6772334B1 (en) * 2000-08-31 2004-08-03 Networks Associates, Inc. System and method for preventing a spoofed denial of service attack in a networked computing environment
US20020032793A1 (en) * 2000-09-08 2002-03-14 The Regents Of The University Of Michigan Method and system for reconstructing a path taken by undesirable network traffic through a computer network from a source of the traffic
US6801503B1 (en) * 2000-10-09 2004-10-05 Arbor Networks, Inc. Progressive and distributed regulation of selected network traffic destined for a network node
US20020107953A1 (en) * 2001-01-16 2002-08-08 Mark Ontiveros Method and device for monitoring data traffic and preventing unauthorized access to a network
US20020133586A1 (en) * 2001-01-16 2002-09-19 Carter Shanklin Method and device for monitoring data traffic and preventing unauthorized access to a network
US7301899B2 (en) * 2001-01-31 2007-11-27 Comverse Ltd. Prevention of bandwidth congestion in a denial of service or other internet-based attack
US6957258B2 (en) * 2001-03-28 2005-10-18 Netrake Corporation Policy gateway
US7007169B2 (en) * 2001-04-04 2006-02-28 International Business Machines Corporation Method and apparatus for protecting a web server against vandals attacks without restricting legitimate access
US7036148B2 (en) * 2001-05-08 2006-04-25 International Business Machines Corporation Method of operating an intrusion detection system according to a set of business rules
US7320032B2 (en) * 2001-05-21 2008-01-15 Hewlett-Packard Development Company, L.P. Methods and structure for reducing resource hogging
US20020184362A1 (en) * 2001-05-31 2002-12-05 International Business Machines Corporation System and method for extending server security through monitored load management
US6965574B1 (en) * 2001-06-20 2005-11-15 Arbor Networks, Inc. Network traffic data collection and query
US7356689B2 (en) * 2001-07-09 2008-04-08 Lucent Technologies Inc. Method and apparatus for tracing packets in a communications network
US6928549B2 (en) * 2001-07-09 2005-08-09 International Business Machines Corporation Dynamic intrusion detection for computer systems

Also Published As

Publication number Publication date
WO2003010548A1 (en) 2003-02-06
US20030023733A1 (en) 2003-01-30
CN1545624A (zh) 2004-11-10
KR100586296B1 (ko) 2006-06-08
US7047303B2 (en) 2006-05-16
EP1417498A1 (en) 2004-05-12
JP3900497B2 (ja) 2007-04-04
TW576044B (en) 2004-02-11
KR20040019341A (ko) 2004-03-05
JP2005521273A (ja) 2005-07-14
EP1417498A4 (en) 2005-03-02

Similar Documents

Publication Publication Date Title
CN1318852C (zh) 一种防止对服务器群集的拒绝服务攻击的装置及其方法
US6158008A (en) Method and apparatus for updating address lists for a packet filter processor
US6092110A (en) Apparatus for filtering packets using a dedicated processor
CN1307564C (zh) 网络交换机和部件及其操作方法
CN1316366C (zh) 网络应用设备的流调度和结构
US6671725B1 (en) Server cluster interconnection using network processor
CN101351784A (zh) 运行时自适应搜索处理器
CN112003920B (zh) 一种信息共享系统
JP2002512411A (ja) アクセス制御方法および装置
CN101771627A (zh) 互联网实时深度包解析和控制节点设备和方法
Olshefski et al. Understanding the management of client perceived response time
CN108737217A (zh) 一种抓包方法及装置
US7013394B1 (en) Data flow pattern recognition and manipulation
CN1318780A (zh) 使用网络处理器的服务器加速
CN100387006C (zh) 内部使用网络交换的计算机系统和方法
CN106856456A (zh) 缓存集群服务的处理方法及系统
Marsan et al. Dynamic polling orders in multiserver multiqueue systems
Walden et al. The Evolution of Host-to-Host Protocol Technology
Bhatia et al. Evaluation of interprocessor communication overhead in distributed computer systems
JP3157564B2 (ja) Osi/トランスポート層ループバック方式
Marsan et al. Good and bad dynamic polling orders in symmetric single buffer Markovian multiserver multiqueue systems
CN102195877B (zh) 分组处理优化
Zheng et al. A new backup model based on SAN system
Peterson et al. Building Secure and Reliable Networks Through Robust Resource Scheduling
Moose Jr with Dynamic Topologies

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070530

Termination date: 20160719

CF01 Termination of patent right due to non-payment of annual fee