US20040199569A1 - Method and system for handling traffic for server systems - Google Patents

Method and system for handling traffic for server systems Download PDF

Info

Publication number
US20040199569A1
US20040199569A1 US10/648,573 US64857303A US2004199569A1 US 20040199569 A1 US20040199569 A1 US 20040199569A1 US 64857303 A US64857303 A US 64857303A US 2004199569 A1 US2004199569 A1 US 2004199569A1
Authority
US
United States
Prior art keywords
blade
packet
server
servers
received packet
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.)
Abandoned
Application number
US10/648,573
Inventor
Mohan Kalkunte
Martin Lund
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.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Broadcom 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 Broadcom Corp filed Critical Broadcom Corp
Priority to US10/648,573 priority Critical patent/US20040199569A1/en
Assigned to BROADCOM COMPORATION reassignment BROADCOM COMPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KALKUNTE, MOHAN, LUND, MARTIN
Publication of US20040199569A1 publication Critical patent/US20040199569A1/en
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT PATENT SECURITY AGREEMENT Assignors: BROADCOM CORPORATION
Assigned to AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD. reassignment AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BROADCOM CORPORATION
Assigned to BROADCOM CORPORATION reassignment BROADCOM CORPORATION TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Assignors: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks

Definitions

  • Certain embodiments of the invention relate to data traffic steering. More specifically, certain embodiments of the invention relate to a method and system for selectively steering data traffic of various data types to functionally dedicated blade servers within a multi-server platform.
  • a server may be a computer system in a network that may be accessed by one or more users and/or other computers.
  • the server may provide, for example, access to information such as files, and to services such as communications, printing or other types of services that may be available through a network.
  • a special network operating system may run on a dedicated server, for example, in a large network.
  • a personal computer (PC) operating system may run on a non-dedicated server having, for example, peer-to-peer networking software running thereon.
  • a server may have one or more advanced or more powerful central processing units (CPUs), a larger memory, a larger cache and more storage space than a typical single user workstation or personal computer.
  • the server may include, for example, multiple processors which may be dedicated to a particular service or provide a particular function such as e-mail handling, printing or communications.
  • the server may also include devices such as, large power supplies, backup power capabilities such as an uninterruptible power supply (UPS) and various fault tolerant or redundant features such as redundant array of independent disks (RAID) technologies.
  • UPS uninterruptible power supply
  • RAID redundant array of independent disks
  • a single server may exist in a standalone enclosure and may interface with a network via one or more network interfaces. Multiple standalone boxes may be situated in a central computing center with each standalone box coupled to a network via a respective cable. Each server may interface to the network separately at a particular data rate such as, for example, approximately 1 gigabits/second (Gb/s) for a Gigabit Ethernet or approximately 10 Gb/s for a 10 Gigabit Ethernet.
  • Gb/s gigabits/second
  • the single server in a standalone enclosure may inefficiently utilize large amounts of space and/or power. Furthermore, since each single server may be connected to the network directly via a respective cable, a room full of servers might be overflowing with cables possibly necessitating detailed cable maps which may be quite time-intensive and costly to produce. In addition, single servers in a standalone enclosure may not be easily replaced during failure, particularly when there may be multiple failures. Consequently, the conventional single server in a standalone box may ultimately suffer from a substantial total cost of ownership (TCO).
  • TCO total cost of ownership
  • Certain embodiments of the invention provide a method and system for processing data in a server. Aspects of the method for processing data in a server may include receiving at least one packet and determining at least one function associated with the received packet. A determination regarding which one of the blade server handles the function associated with the received packet may be done. The received packet may be steered to at least one of a plurality of blade servers that handles the determined function associated with the received packet. The method may further include generating at least one association between a particular characteristic of a packet and a particular function associated with that packet. One or more of the blade servers may be assigned to handle the particular function associated with a packet. This may be done so that the packet may be identified when received. Notwithstanding, the particular characteristic may be a packet type, a field within the packet and/or a flag within a portion of the packet.
  • the method may also include processing the steered packet by one or more of the blade servers that handles the determined function.
  • a default blade server may be assigned to handle one or more of the received packets.
  • at least one of the received packets may be steered to the default blade server if the received packet is unrecognized and/or if the received packet contains particular data.
  • One or more of the blade servers may be configured to control steering of the received packet to at least one of the other blade servers. Accordingly, a switch blade may be utilized to control steering of the received packets.
  • Another embodiment of the invention may provide a machine-readable storage, having stored thereon, a computer program having at least one code section for processing data in a server.
  • the at least one code section may be executable by a machine, thereby causing the machine to perform the steps as described above for processing data in a server.
  • aspects of the system for processing data in a server may include at least one of a plurality of blade servers that may receive at least one packet and determine at least one function associated with the received packet.
  • the blade server may steer one or more received packets to at least one other blade server that handles the determined function.
  • Any one or more of the blade servers may generate or create at least one association between a particular characteristic of a packet and a particular function associated with that packet.
  • the particular characteristic may be a packet type, a packet field and/or a flag within a portion of the packet.
  • At least one of the blade servers may be utilized to assign one of the plurality of blade servers to handle the particular function.
  • At least one of the blade servers may be utilized to determine which one of the plurality of blade servers may be utilized to handle the function associated with the received packet. Once a determination has been made, the blade server may process the steered packet that it receives. One or more of the blade servers may be utilized to define a default blade server that may be utilized to handle a received packet. At least one of the blade servers may be utilized to steer one or more packets to the default blade server for processing. Steering a packet to a default blade server may occur if a packet is unrecognized or has no association and/or the packet has particular data contained within the packet. A switch blade may be utilized to control controlling steering of a least one packet to a blade server.
  • FIG. 1 is a block diagram of an embodiment of a multi-server platform in accordance with an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating an embodiment of a communication system including a multi-server platform and an external network, in accordance with various aspects of the invention.
  • FIG. 3 is a flowchart illustrating an embodiment of a method to selectively steer data traffic to service blades in the multi-server platform of FIG. 2, in accordance with various aspects of the invention.
  • FIG. 4 is a block diagram illustrating an embodiment of a communication system including a multi-server platform and an external network, which may be utilized for data steering in accordance with various aspects of the invention
  • FIG. 5 is a flowchart illustrating exemplary generic steps for steering traffic in accordance with and embodiment of the present invention.
  • Certain embodiments of the invention may include selective steering of data traffic of various data types to functionally dedicated blade servers. Certain embodiments of the invention provide a method and system for processing data in a server. Aspects of the method for processing data in a server may involve receiving a packet and determining a function associated with the received packet. The blade server handling the function associated with the received packet may be determined. Accordingly, the received packet may be steered to one or more of a plurality of blade servers that may handle the determined function associated with the received packet. At least one association may be generated or created between a particular characteristic of a packet and a particular function associated with that packet. At least one blade server may be assigned to handle the particular function associated with a packet. The particular characteristic of the packet may include, but is not limited to, a packet type, a field within the packet and/or a flag within a portion of the packet.
  • steered packets may be processed by at least one of the blade servers that may be adapted to handle the function associated with the packets.
  • a default blade server may be assigned to handle one or more of the received packets and one or more received packets may be steered to the default blade server if the received packet is unrecognized and/or contains particular data.
  • One or more of the blade servers may be configured to control steering of the received packet to at least one of the other blade servers.
  • a switch blade may be utilized to control steering of the received packets.
  • FIG. 1 is a block diagram of an embodiment of a multi-server platform 100 in accordance with an embodiment of the present invention.
  • the multi-server platform 100 may include a chassis 110 , a backplane 130 , a switch blade 140 , blade server interfaces 150 , and a plurality of blade servers No. 1, No. 2, . . . , No. n, collectively referenced as 120 .
  • the chassis 110 may include the backplane 130 .
  • the invention is not so limited and a plurality of backplanes may be provided within the chassis 110 .
  • one or more backplanes may be coupled together.
  • the chassis 110 may include a single backplane
  • the backplane may be regarded as a common backplane, which may provide connectivity for the blade servers 120 .
  • the chassis 110 may be part of a single installation enclosure that includes a plurality of blade server slots which may be adapted receiving one or more of the blade servers 120 .
  • the backplane 130 may include, for example, one or more blade server interfaces collectively referenced as 150 , which may be referred to as blade server interconnects.
  • the chassis 110 may include a plurality of blade server slots that may be adapted to facilitate connection between the blade servers and the blade server interfaces 150 .
  • the blade server slots may provide a conduit for coupling the blade servers 120 to the blade server interfaces 150 .
  • the backplane 130 may also include one or more interfaces such as a network interface 160 .
  • the network interface 160 may be referred to as network interconnect.
  • the switch blade 140 may be part of the backplane 130 .
  • the switch blade 140 may be integrated within the backplane 130 or it may be a plug-in card that may be plugged into the backplane 130 .
  • the blade servers 120 may be coupled to the backplane 130 via the blade server interfaces 150 .
  • Each of the blade servers 120 may therefore be coupled to a corresponding one of the server interfaces 150 .
  • each of the blade servers 120 may be plugged into or removably mounted in a corresponding blade server slot in the chassis 110 so that it interfaces with a corresponding one of the server interfaces.
  • the blade servers 120 may be coupled to the backplane 130 .
  • the blade servers 120 may be coupled to the switch blade 140 of the backplane 130 via the blade server interfaces 150 .
  • the backplane 130 may be adapted to provide connectivity, for example, between two or more of the blade servers 120 .
  • the backplane 130 and/or the switch blades 140 may provide connectivity between the one or more of the blade servers 120 and the network 170 .
  • the network interface 160 facilitates connectivity between the backplane 130 and the network 170 .
  • the network interface 160 may couple backplane 130 and/or one or more of the plurality of switch blades 140 to the network 170 .
  • FIG. 2 is a block diagram illustrating an embodiment of a communication system 200 including a multi-server platform 201 and an external network 206 , in accordance with various aspects of the invention.
  • the multi-server platform 201 may include a chassis having a common backplane 211 , a common switch-blade 202 and a plurality of blade servers including, a blade server #1 203 , a blade server #2 204 , . . . , blade server #N 205 , where N may be any integer number.
  • Each of the blade servers #1, #2, . . . , #N may be a server that has been integrated on a single plug-in card or blade that may be plugged into a blade server slot of the chassis with the common backplane 211 .
  • the chassis with a common backplane 211 may provide a single installation enclosure for the multiple blade servers #1, #2, . . . , #N.
  • the chassis with the common backplane 211 may also serve a common interface between each blade server 203 , 204 , 205 and the common switch blade 202 .
  • common backplane 211 may provide a common backplane interface 208 between blade server #1 203 and the common switch blade 202 .
  • Common backplane 211 may also provide a common backplane interface 209 between blade server #2 204 and the common switch blade 202 .
  • common backplane 211 may provide a common backplane interface 210 between blade server #N 205 and the common switch blade 202 .
  • the common backplane interfaces 208 , 209 , 210 are part of the common backplane 211 .
  • the common switch blade 202 may include N+1 interfaces and at least a portion of these interfaces may be adapted to perform packet switching of data frames between the N blade servers and the external network 206 , in accordance with an embodiment of the invention.
  • the common switch-blade may include intelligence that may manage and distribute data traffic to the relevant blade servers including blade server #1, #2, . . . , #N.
  • the common switch-blade 202 may interface with each of the N blade servers via the common backplane 211 .
  • the common switch-blade 202 may also interface with the external network 206 , thereby resulting in N+1 interfaces.
  • the external network 206 may include a 10 Gigabit Ethernet network connection and interface.
  • the external interface 207 between the common switch blade 202 and the external network 206 may include a 10 Gigabit Ethernet (GbE) interface, operating at a data rate of 10 Gb/s.
  • GbE 10 Gigabit Ethernet
  • bidirectional network communication capability may be provided between the external network 206 and the common switch blade 202 .
  • the common backplane 211 may include a plurality of Gigabit Ethernet (GbE) interfaces.
  • the switch blade 202 may communicate with each of the N blade servers independently over the common backplane 211 at a data rate of 1 Gb/s.
  • the blade server #1 203 may communicate in a bidirectional manner with the common switch-blade 202 via the common backplane interface 208 .
  • the blade server #2 204 may also communicate in a bidirectional manner with the common switch blade 202 via the common backplane interface 209 .
  • the blade server #N 105 may communicate in a bi-directional manner with the common switch blade 202 via the common backplane interface 210 .
  • FIG. 3 is a flowchart illustrating an embodiment of a method 300 to selectively steer data traffic to service blades in the multi-server platform 100 of FIG. 2, in accordance with various aspects of the invention.
  • a first data frame or packet of a first data type may be received by a common switch blade within a multi-server platform from an external network.
  • a second data frame or packet of a second data type may be received by the common switch blade within a multi-server platform from an external network.
  • a third data frame or packet of a third data type may be received by the common switch blade within a multi-server platform from an external network.
  • the first data type of the first data frame may be recognized by the common switch-blade, and the first data frame may be steered from the common switch-blade to a first blade server within the multi-server platform across a common backplane.
  • the second data type of the second data frame may be recognized by the common switch-blade, and the second data frame may be steered from the common switch-blade to a second blade server within the multi-server platform across the common backplane.
  • the third data type of the third data frame may be recognized by the common switch-blade, and the third data frame may be steered from the common switch-blade to a third blade server within the multi-server platform across the common backplane.
  • each of the plurality of blade servers #1, #2, . . . , #N may be dedicated to providing a different, specific function within the multi-server platform 101 .
  • the common switch blade 202 may receive a data frame corresponding to an encrypted data type from the external network 206 .
  • the common switch blade 202 may recognize the encrypted data type of the data frame and steer the data frame across the common backplane 211 to the blade server 203 , which is dedicated to decrypting data frames.
  • the common switch blade 202 may receive a data frame of a particular data type from a particular source on the external network 206 .
  • the source of the data frame may be unfamiliar or unrecognizable by the common switch blade 202 .
  • the particular source associated with the received data frame may not be an authorized source for communication data on the external network.
  • the common switch blade 202 may steer the data frame to the blade server 204 , which may be configured as a dedicated server for performing authentication and/or intrusion detection.
  • the blade server 204 may process the received data frame and recognize that a hacker may be attempting an unauthorized access into the multi-server platform 101 via the external network 106 . In this regard, the intrusion may be thwarted and any appropriate sub-system and/or authority notified.
  • the common switch blade 202 may receive a data frame corresponding to a database application hosted on the multi-server platform 201 .
  • the common switch blade may recognize that the data frame corresponds to the database application and may accordingly steer the data frame to the blade server 205 .
  • the blade server 205 may have been configured to function as a database acceleration engine that may be utilized to decrease the load on other database servers within the multi-server platform 201 .
  • the blade server 205 may be configured to offload excess traffic from other database servers that may be coupled to the network.
  • blade servers in the multi-server platform may be dedicated to performing functions such as virus scanning, firewall applications, email applications, short message service (SMS), voice processing and printing, for example.
  • the method and system may provide selective steering of data traffic of various data types to functionally dedicated blade servers within a multi-server platform.
  • a common switch-blade within a multi-server platform steers data frames to the appropriate blade servers within the multi-server platform across a common backplane.
  • various functions may be duplicated on the blade servers throughout the multiserver platform.
  • FIG. 4 is a block diagram illustrating an embodiment of a communication system 400 including a multi-server platform 401 and an external network 406 , which may be utilized for data steering in accordance with various aspects of the invention.
  • the multi-server platform 401 may include a chassis having a common backplane 411 , a common switch blade 402 and a plurality of server blades 403 , 404 , 405 .
  • the multiserver platform 401 may also include a voice application 416 , a voice client 417 , a short message server (SMS) application 414 , a short message server client 415 , an email application 412 and an email client 413 .
  • SMS short message server
  • the multiserver platform 401 is similar to the multiserver platform 201 of FIG. 2, except the former illustrates the voice application 416 , the voice client 417 , the short message service application 414 , the short message service client 415 , the email application 412 and the email client 413 .
  • the multi-server platform 401 may also include a chassis with a common backplane 411 that may also provide a common backplane interface between each blade server 403 , 404 , 405 and the common switch blade 402 .
  • the common backplane 411 may provide a common backplane interface 408 between blade server 403 and the common switch blade 402 .
  • the common backplane 411 may also provide a common backplane interface 409 between blade server 404 and the common switch blade 402 .
  • common backplane 411 may provide a common backplane interface 410 between blade server 405 and the common switch blade 402 .
  • the common backplane interfaces 408 , 409 , 410 may be integrated into the backplane 411 or otherwise coupled to the common backplane 411 .
  • the voice application 416 , the short message service application 414 and the email application 412 may be software applications that may run on the multiserver platform 401 . Notwithstanding, the voice application 416 may have one or more components that may run in the blade server 403 and the short message service application 414 may have one or more components that may run on the blade server 404 . Finally, the email application 412 , may also have one or more components that may run on the blade server 405 .
  • the voice client 417 may be an Internet protocol (IP) telephone
  • the SMS client 415 may be a hybrid telephone/PDA
  • the email client 413 may be a handheld computer, for example.
  • the blade server 403 may be adapted to handle voice processing, which may be processed by the voice application 416 .
  • the blade server 404 may be adapted to handle short message service, which may be processed by the short message service application 414 .
  • the blade server 405 may be adapted to handle email, which may be processed by the email application 412 .
  • the common switch blade 402 may include suitable software and/or hardware that may be utilized to determine what functions should service a particular type or kind of received message. Based on the function that may be associated with the received messages, the common switch blade may steer the message to an appropriate blade server offering a corresponding processing function.
  • one or more association tables may be created that contain entries that associate various types of messages to various types of functions and their corresponding processing entities.
  • the blade server 403 may be associated with the processing of voice messages.
  • text-to-speech (TTS) processing and speech encoding and transcoding functions may be associated with blade server 403 and its associated voice application 416 .
  • the blade server 404 and/or short message service application 414 may be associated with the processing of short message service messages.
  • any messages received by the common switch blade 402 relating to short message server functions may be steered to the blade server 404 and/or its corresponding short message service application 414 .
  • the blade server 405 and/or email application 412 may be associated with the processing of email messages.
  • received messages that may be associated with the email function may be steered to the blade server 405 for processing.
  • the associations may be stored in a memory of the blade server as a lookup table. The lookup table may be updated anytime there are new associations or when associations have changed.
  • an email message originating from the email client 413 may be steered to the common switch blade 402 via the network 406 and an external interface 407 .
  • the external interface 407 may be located between the common switch blade 402 and the external network 406 .
  • the common switch blade 402 may examine the received message and determine that it may be related to an email function based on, for example, a lookup table entry. Accordingly, the common switch blade 402 may steer the email message to the blade server 405 via the interface 410 where it made be processed by the blade server 405 and/or the email application 412 .
  • an email message originating from the email application 412 and/or the blade server 405 may be communicated to the common switch blade 402 via the interface 410 .
  • the common switch blade 402 may determine that the email is destined for the email client 413 . Accordingly, the common switch blade 402 may steer the email message to the email client 413 via the network 406 .
  • a short message service message originating from the short message service client 415 may be steered to the common switch blade 402 via the network 406 and an external interface 407 .
  • the common switch blade 402 may examine the message and determine that it is associated with an email function. Accordingly, the common switch blade 402 may steer the short message service message to the blade server 404 via the interface 409 where it may be processed by the blade server 404 and/or the short message service application 414 .
  • a voice message originating from the voice client 417 may be steered to the common switch blade 402 via the network 406 and an external interface 407 .
  • the common switch blade 402 may examine the message and determine that it is associated with a voice function. Accordingly, the common switch blade 402 may steer the voice message to the blade server 403 via the interface 408 where it may be processed by the blade server 403 and/or the voice application 416 .
  • the integration of multiple blade servers into a multi-server platform 100 may provide an increased server density and easier management of the multiple servers since all the servers are situated in a single installation enclosure. Additionally, the integration of multiple blade servers may provide a more scalable system with greater reliability. With regard to scalability, more servers may be readily added, provisioned or commissioned to facilitate increased traffic and more servers may be readily removed to facilitate decreased traffic. The integration of multiple blade servers within a single enclosure may more readily facilitate the implantation of fault tolerance and redundancy. Accordingly, the redundancy may ultimately result in substantial reliability and significantly reduced downtime.
  • the blade servers 120 may include one or more of the characteristics as set forth below.
  • the blade server 120 may be modular and self-contained, and may include, for example, a server on a card or a single-board computer (SBC).
  • the blade server 120 may include for example, a computer disposed in an ultra-dense card or board.
  • the ultra-dense card may include, but is not limited to, a central processing unit (CPU), a memory, a hard disk and networking components.
  • the blade server 120 may be hot swappable, hot pluggable and/or adapted for plug-and-play capability.
  • the chassis 110 may provide sharing among the blade servers 120 for one or more of the following: power supplies, cooling fans and access to the network 170 or storage.
  • FIG. 5 is a flowchart illustrating exemplary generic steps for steering traffic in accordance with and embodiment of the present invention.
  • the common switch blade of the multi-server platform receives a packet such as a data packet via the network 170 .
  • common switch blade may determine which function is associated with the received message.
  • the common switch blade may determine which blade server is associated with the determine function for the received message.
  • the common switch blade steers the received packet to the blade server associated with the determined function.
  • the switch blade may analyze the packet to determine one or more characteristics that may assist in determining to which of the blade server or blades 120 the packet may be transmitted.
  • the characteristic may be, for example, a particular field value in a frame of the packet.
  • the characteristic may be, for example, an enabled or disabled flag in a frame of the packet.
  • the characteristic may be, for example, a particular packet type. Notwithstanding, a particular data type may be processed by a particular blade server 120 and the message may be steered to one or more blade servers for processing.
  • At least a portion of the blade servers 120 may be dedicated to providing different, specific functions within the multi-server platform 100 .
  • the switch blade 140 may steer the data frame to the particular blade server 120 that is dedicated to decrypting encrypted data frames.
  • the switch blade 140 may steer the packet to a blade server 120 that may be configured, for example, as a database acceleration engine, thereby decreasing the load on other database servers within the multi-server platform 100 .
  • Other blade servers in the multi-server platform 100 may be dedicated to perform, for example, virus detection, firewall applications, mission-critical applications, e-mail applications, and printing, as well as other applications, operations and tasks.
  • Some embodiments of the invention may include alerting the switch blade 140 when a particular packet type is received or when a particular packet is received from a particular source.
  • the switch blade 140 may reject or refuse to steer packets from unknown, unfamiliar or unauthorized sources.
  • some received packets may be processed by a default handler if no blade server has been specified to handle a function associated with the message.
  • the switch blade 140 may steer the packets from unknown, unfamiliar or unauthorized sources to a particular blade server that is dedicated to performing intrusion detection or other types of threat assessment.
  • the particular dedicated blade server may determine that an attack is in progress from an attacker or a hacker linked via the network 170 .
  • aspects of the system for processing data in a server may include at least one of a plurality of blade servers that may receive at least one packet and determine at least one function associated with the received packet.
  • the blade server may steer one or more of the packets that are received one or more other blade servers that may be adapted to handle the determined function.
  • Any of the blade servers may be utilized to generate or create at least one association between a particular characteristic of a packet and a particular function associated with that packet.
  • the particular characteristic may be a packet type, a packet field and/or a flag within a portion of the packet.
  • one or more blade servers may be utilized to assign a particular blade server to handle the particular function.
  • At least one of the blade servers may be utilized to determine which one of the plurality of blade servers may be utilized to handle the function associated with the received packet. Once a determination has been made, the blade server may process the steered packet that it receives. One or more of the blade servers may be utilized to define a default blade server that may be utilized to handle a received packet. At least one of the blade servers may be utilized to steer one or more packets to the default blade server for processing. Steering a packet to a default blade server may occur if a packet is unrecognized or has no association and/or the packet has particular data contained within the packet.
  • a switch blade may be utilized to control controlling steering of a least one packet to a blade server.
  • the present invention may be realized in hardware, software, or a combination of hardware and software.
  • the present invention may be realized in a centralized fashion in one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited.
  • a typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
  • the present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods.
  • Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

Abstract

Aspects for processing data in a server may include receiving a packet and determining a function associated with the packet. A blade server handling the function associated with the packet may be determined and the packet may be steered to that blade server. At least one association may be generated or created between a particular characteristic of a packet and a particular function associated with that packet. At least one blade server may be assigned to handle the particular function associated with a packet. The particular characteristic of the packet may include, for example, a packet type, a field within the packet and/or a flag within a portion of the packet. Steered packets may be processed by one or more blade servers that may be adapted to handle the function associated with the packets. A switch blade may be utilized to control steering of the received packets.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE
  • This application makes reference to, and/or claims priority to and/or claims benefit of: [0001]
  • U.S. Provisional Patent Application Serial No. 60/448,656, entitled “A Method and System to Provide External Communication Using a Multi-Server Platform Having a Single Switch Backplane” and filed on Feb. 18, 2003; [0002]
  • U.S. Provisional Patent Application Serial No. 60/456,831, entitled “Method and System to Provide Inter-Blade Server Communication Using a Single Switch Backplane” and filed on Mar. 21, 2003; [0003]
  • U.S. Provisional Patent Application Serial No. 60/458,719, entitled “Method and System to Provide Inter-Chassis Blade Server Integration for Scalability” and filed on Mar. 28, 2003; and [0004]
  • U.S. Provisional Patent Application Serial No. 60/463,014, entitled “Method and System to Selectively Steer Data Traffic to Service Blades Using a Single Switch Backplane” and filed on Apr. 15, 2003. [0005]
  • The above stated applications are hereby incorporated herein by reference in their entirety. [0006]
  • FIELD OF THE INVENTION
  • Certain embodiments of the invention relate to data traffic steering. More specifically, certain embodiments of the invention relate to a method and system for selectively steering data traffic of various data types to functionally dedicated blade servers within a multi-server platform. [0007]
  • BACKGROUND OF THE INVENTION
  • A server may be a computer system in a network that may be accessed by one or more users and/or other computers. The server may provide, for example, access to information such as files, and to services such as communications, printing or other types of services that may be available through a network. In some cases, a special network operating system (OS) may run on a dedicated server, for example, in a large network. A personal computer (PC) operating system may run on a non-dedicated server having, for example, peer-to-peer networking software running thereon. [0008]
  • Generally, a server may have one or more advanced or more powerful central processing units (CPUs), a larger memory, a larger cache and more storage space than a typical single user workstation or personal computer. The server may include, for example, multiple processors which may be dedicated to a particular service or provide a particular function such as e-mail handling, printing or communications. The server may also include devices such as, large power supplies, backup power capabilities such as an uninterruptible power supply (UPS) and various fault tolerant or redundant features such as redundant array of independent disks (RAID) technologies. [0009]
  • A single server may exist in a standalone enclosure and may interface with a network via one or more network interfaces. Multiple standalone boxes may be situated in a central computing center with each standalone box coupled to a network via a respective cable. Each server may interface to the network separately at a particular data rate such as, for example, approximately 1 gigabits/second (Gb/s) for a Gigabit Ethernet or approximately 10 Gb/s for a 10 Gigabit Ethernet. [0010]
  • Thus, the single server in a standalone enclosure may inefficiently utilize large amounts of space and/or power. Furthermore, since each single server may be connected to the network directly via a respective cable, a room full of servers might be overflowing with cables possibly necessitating detailed cable maps which may be quite time-intensive and costly to produce. In addition, single servers in a standalone enclosure may not be easily replaced during failure, particularly when there may be multiple failures. Consequently, the conventional single server in a standalone box may ultimately suffer from a substantial total cost of ownership (TCO). [0011]
  • Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings. [0012]
  • BRIEF SUMMARY OF THE INVENTION
  • Certain embodiments of the invention provide a method and system for processing data in a server. Aspects of the method for processing data in a server may include receiving at least one packet and determining at least one function associated with the received packet. A determination regarding which one of the blade server handles the function associated with the received packet may be done. The received packet may be steered to at least one of a plurality of blade servers that handles the determined function associated with the received packet. The method may further include generating at least one association between a particular characteristic of a packet and a particular function associated with that packet. One or more of the blade servers may be assigned to handle the particular function associated with a packet. This may be done so that the packet may be identified when received. Notwithstanding, the particular characteristic may be a packet type, a field within the packet and/or a flag within a portion of the packet. [0013]
  • The method may also include processing the steered packet by one or more of the blade servers that handles the determined function. In accordance with an aspect of the invention, a default blade server may be assigned to handle one or more of the received packets. In this regard, at least one of the received packets may be steered to the default blade server if the received packet is unrecognized and/or if the received packet contains particular data. One or more of the blade servers may be configured to control steering of the received packet to at least one of the other blade servers. Accordingly, a switch blade may be utilized to control steering of the received packets. [0014]
  • Another embodiment of the invention may provide a machine-readable storage, having stored thereon, a computer program having at least one code section for processing data in a server. The at least one code section may be executable by a machine, thereby causing the machine to perform the steps as described above for processing data in a server. [0015]
  • Aspects of the system for processing data in a server may include at least one of a plurality of blade servers that may receive at least one packet and determine at least one function associated with the received packet. The blade server may steer one or more received packets to at least one other blade server that handles the determined function. Any one or more of the blade servers may generate or create at least one association between a particular characteristic of a packet and a particular function associated with that packet. In this regard, the particular characteristic may be a packet type, a packet field and/or a flag within a portion of the packet. At least one of the blade servers may be utilized to assign one of the plurality of blade servers to handle the particular function. [0016]
  • Notwithstanding, at least one of the blade servers may be utilized to determine which one of the plurality of blade servers may be utilized to handle the function associated with the received packet. Once a determination has been made, the blade server may process the steered packet that it receives. One or more of the blade servers may be utilized to define a default blade server that may be utilized to handle a received packet. At least one of the blade servers may be utilized to steer one or more packets to the default blade server for processing. Steering a packet to a default blade server may occur if a packet is unrecognized or has no association and/or the packet has particular data contained within the packet. A switch blade may be utilized to control controlling steering of a least one packet to a blade server. [0017]
  • These and other advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings. [0018]
  • BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS
  • FIG. 1 is a block diagram of an embodiment of a multi-server platform in accordance with an embodiment of the present invention. [0019]
  • FIG. 2 is a block diagram illustrating an embodiment of a communication system including a multi-server platform and an external network, in accordance with various aspects of the invention. [0020]
  • FIG. 3 is a flowchart illustrating an embodiment of a method to selectively steer data traffic to service blades in the multi-server platform of FIG. 2, in accordance with various aspects of the invention. [0021]
  • FIG. 4 is a block diagram illustrating an embodiment of a communication system including a multi-server platform and an external network, which may be utilized for data steering in accordance with various aspects of the invention [0022]
  • FIG. 5 is a flowchart illustrating exemplary generic steps for steering traffic in accordance with and embodiment of the present invention. [0023]
  • DETAILED DESCRIPTION OF THE INVENTION
  • Certain embodiments of the invention may include selective steering of data traffic of various data types to functionally dedicated blade servers. Certain embodiments of the invention provide a method and system for processing data in a server. Aspects of the method for processing data in a server may involve receiving a packet and determining a function associated with the received packet. The blade server handling the function associated with the received packet may be determined. Accordingly, the received packet may be steered to one or more of a plurality of blade servers that may handle the determined function associated with the received packet. At least one association may be generated or created between a particular characteristic of a packet and a particular function associated with that packet. At least one blade server may be assigned to handle the particular function associated with a packet. The particular characteristic of the packet may include, but is not limited to, a packet type, a field within the packet and/or a flag within a portion of the packet. [0024]
  • In accordance with an aspect of the invention, steered packets may be processed by at least one of the blade servers that may be adapted to handle the function associated with the packets. A default blade server may be assigned to handle one or more of the received packets and one or more received packets may be steered to the default blade server if the received packet is unrecognized and/or contains particular data. One or more of the blade servers may be configured to control steering of the received packet to at least one of the other blade servers. In this regard, a switch blade may be utilized to control steering of the received packets. [0025]
  • FIG. 1 is a block diagram of an embodiment of a [0026] multi-server platform 100 in accordance with an embodiment of the present invention. The multi-server platform 100 may include a chassis 110, a backplane 130, a switch blade 140, blade server interfaces 150, and a plurality of blade servers No. 1, No. 2, . . . , No. n, collectively referenced as 120.
  • The [0027] chassis 110 may include the backplane 130. However, although only one backplane 130 is shown, the invention is not so limited and a plurality of backplanes may be provided within the chassis 110. In this regard, one or more backplanes may be coupled together. In a case where the chassis 110 may include a single backplane, the backplane may be regarded as a common backplane, which may provide connectivity for the blade servers 120. The chassis 110 may be part of a single installation enclosure that includes a plurality of blade server slots which may be adapted receiving one or more of the blade servers 120.
  • The [0028] backplane 130 may include, for example, one or more blade server interfaces collectively referenced as 150, which may be referred to as blade server interconnects. In this regard, the chassis 110 may include a plurality of blade server slots that may be adapted to facilitate connection between the blade servers and the blade server interfaces 150. In other words, the blade server slots may provide a conduit for coupling the blade servers 120 to the blade server interfaces 150. The backplane 130 may also include one or more interfaces such as a network interface 160. The network interface 160 may be referred to as network interconnect.
  • The [0029] switch blade 140 may be part of the backplane 130. In this regard, the switch blade 140 may be integrated within the backplane 130 or it may be a plug-in card that may be plugged into the backplane 130.
  • The [0030] blade servers 120 may be coupled to the backplane 130 via the blade server interfaces 150. Each of the blade servers 120 may therefore be coupled to a corresponding one of the server interfaces 150. For example, each of the blade servers 120 may be plugged into or removably mounted in a corresponding blade server slot in the chassis 110 so that it interfaces with a corresponding one of the server interfaces. In this regard, the blade servers 120 may be coupled to the backplane 130.
  • Once the [0031] blade servers 120 are mounted or plugged into the chassis 110, the blade servers 120 may be coupled to the switch blade 140 of the backplane 130 via the blade server interfaces 150. The backplane 130 may be adapted to provide connectivity, for example, between two or more of the blade servers 120. Furthermore, the backplane 130 and/or the switch blades 140 may provide connectivity between the one or more of the blade servers 120 and the network 170.
  • The [0032] network interface 160 facilitates connectivity between the backplane 130 and the network 170. In this regard, the network interface 160 may couple backplane 130 and/or one or more of the plurality of switch blades 140 to the network 170.
  • FIG. 2 is a block diagram illustrating an embodiment of a [0033] communication system 200 including a multi-server platform 201 and an external network 206, in accordance with various aspects of the invention. The multi-server platform 201 may include a chassis having a common backplane 211, a common switch-blade 202 and a plurality of blade servers including, a blade server #1 203, a blade server #2 204, . . . , blade server #N 205, where N may be any integer number.
  • Each of the [0034] blade servers #1, #2, . . . , #N may be a server that has been integrated on a single plug-in card or blade that may be plugged into a blade server slot of the chassis with the common backplane 211. The chassis with a common backplane 211 may provide a single installation enclosure for the multiple blade servers #1, #2, . . . , #N.
  • The chassis with the [0035] common backplane 211 may also serve a common interface between each blade server 203, 204, 205 and the common switch blade 202. For example, common backplane 211 may provide a common backplane interface 208 between blade server #1 203 and the common switch blade 202. Common backplane 211 may also provide a common backplane interface 209 between blade server #2 204 and the common switch blade 202. Finally, common backplane 211 may provide a common backplane interface 210 between blade server #N 205 and the common switch blade 202. In this regard, the common backplane interfaces 208, 209, 210 are part of the common backplane 211.
  • The [0036] common switch blade 202 may include N+1 interfaces and at least a portion of these interfaces may be adapted to perform packet switching of data frames between the N blade servers and the external network 206, in accordance with an embodiment of the invention. The common switch-blade may include intelligence that may manage and distribute data traffic to the relevant blade servers including blade server #1, #2, . . . , #N. The common switch-blade 202 may interface with each of the N blade servers via the common backplane 211. The common switch-blade 202 may also interface with the external network 206, thereby resulting in N+1 interfaces.
  • In accordance with an embodiment of the invention, the [0037] external network 206 may include a 10 Gigabit Ethernet network connection and interface. The external interface 207 between the common switch blade 202 and the external network 206 may include a 10 Gigabit Ethernet (GbE) interface, operating at a data rate of 10 Gb/s. In this regard bidirectional network communication capability may be provided between the external network 206 and the common switch blade 202. In order to facilitate Gigabit Ethernet communication, the common backplane 211 may include a plurality of Gigabit Ethernet (GbE) interfaces. The switch blade 202 may communicate with each of the N blade servers independently over the common backplane 211 at a data rate of 1 Gb/s. For example, the blade server #1 203 may communicate in a bidirectional manner with the common switch-blade 202 via the common backplane interface 208. The blade server #2 204 may also communicate in a bidirectional manner with the common switch blade 202 via the common backplane interface 209. Finally, the blade server #N 105 may communicate in a bi-directional manner with the common switch blade 202 via the common backplane interface 210.
  • FIG. 3 is a flowchart illustrating an embodiment of a [0038] method 300 to selectively steer data traffic to service blades in the multi-server platform 100 of FIG. 2, in accordance with various aspects of the invention. Referring to FIG. 3, in step 301, a first data frame or packet of a first data type may be received by a common switch blade within a multi-server platform from an external network. In step 302, a second data frame or packet of a second data type may be received by the common switch blade within a multi-server platform from an external network. In step 303, a third data frame or packet of a third data type may be received by the common switch blade within a multi-server platform from an external network. In step 304, the first data type of the first data frame may be recognized by the common switch-blade, and the first data frame may be steered from the common switch-blade to a first blade server within the multi-server platform across a common backplane. In step 305, the second data type of the second data frame may be recognized by the common switch-blade, and the second data frame may be steered from the common switch-blade to a second blade server within the multi-server platform across the common backplane. In step 306, the third data type of the third data frame may be recognized by the common switch-blade, and the third data frame may be steered from the common switch-blade to a third blade server within the multi-server platform across the common backplane.
  • In accordance with an embodiment of the present invention, each of the plurality of [0039] blade servers #1, #2, . . . , #N may be dedicated to providing a different, specific function within the multi-server platform 101. For example, referring to FIG. 2, the common switch blade 202 may receive a data frame corresponding to an encrypted data type from the external network 206. The common switch blade 202 may recognize the encrypted data type of the data frame and steer the data frame across the common backplane 211 to the blade server 203, which is dedicated to decrypting data frames.
  • The [0040] common switch blade 202 may receive a data frame of a particular data type from a particular source on the external network 206. The source of the data frame may be unfamiliar or unrecognizable by the common switch blade 202. In this regard, the particular source associated with the received data frame may not be an authorized source for communication data on the external network. Accordingly, the common switch blade 202 may steer the data frame to the blade server 204, which may be configured as a dedicated server for performing authentication and/or intrusion detection. The blade server 204 may process the received data frame and recognize that a hacker may be attempting an unauthorized access into the multi-server platform 101 via the external network 106. In this regard, the intrusion may be thwarted and any appropriate sub-system and/or authority notified.
  • In another example, the [0041] common switch blade 202 may receive a data frame corresponding to a database application hosted on the multi-server platform 201. The common switch blade may recognize that the data frame corresponds to the database application and may accordingly steer the data frame to the blade server 205. The blade server 205 may have been configured to function as a database acceleration engine that may be utilized to decrease the load on other database servers within the multi-server platform 201. In this regard, the blade server 205 may be configured to offload excess traffic from other database servers that may be coupled to the network.
  • Other blade servers in the multi-server platform may be dedicated to performing functions such as virus scanning, firewall applications, email applications, short message service (SMS), voice processing and printing, for example. In this regard, the method and system may provide selective steering of data traffic of various data types to functionally dedicated blade servers within a multi-server platform. A common switch-blade within a multi-server platform steers data frames to the appropriate blade servers within the multi-server platform across a common backplane. In one aspect of the invention, in order to provide redundancy, various functions may be duplicated on the blade servers throughout the multiserver platform. [0042]
  • FIG. 4 is a block diagram illustrating an embodiment of a [0043] communication system 400 including a multi-server platform 401 and an external network 406, which may be utilized for data steering in accordance with various aspects of the invention. The multi-server platform 401 may include a chassis having a common backplane 411, a common switch blade 402 and a plurality of server blades 403, 404, 405. The multiserver platform 401 may also include a voice application 416, a voice client 417, a short message server (SMS) application 414, a short message server client 415, an email application 412 and an email client 413. The multiserver platform 401 is similar to the multiserver platform 201 of FIG. 2, except the former illustrates the voice application 416, the voice client 417, the short message service application 414, the short message service client 415, the email application 412 and the email client 413.
  • The [0044] multi-server platform 401 may also include a chassis with a common backplane 411 that may also provide a common backplane interface between each blade server 403, 404, 405 and the common switch blade 402. In this regard, the common backplane 411 may provide a common backplane interface 408 between blade server 403 and the common switch blade 402. The common backplane 411 may also provide a common backplane interface 409 between blade server 404 and the common switch blade 402. Finally, common backplane 411 may provide a common backplane interface 410 between blade server 405 and the common switch blade 402. The common backplane interfaces 408, 409, 410 may be integrated into the backplane 411 or otherwise coupled to the common backplane 411.
  • The [0045] voice application 416, the short message service application 414 and the email application 412 may be software applications that may run on the multiserver platform 401. Notwithstanding, the voice application 416 may have one or more components that may run in the blade server 403 and the short message service application 414 may have one or more components that may run on the blade server 404. Finally, the email application 412, may also have one or more components that may run on the blade server 405. The voice client 417 may be an Internet protocol (IP) telephone, the SMS client 415 may be a hybrid telephone/PDA and the email client 413 may be a handheld computer, for example.
  • The [0046] blade server 403 may be adapted to handle voice processing, which may be processed by the voice application 416. The blade server 404 may be adapted to handle short message service, which may be processed by the short message service application 414. Finally, the blade server 405 may be adapted to handle email, which may be processed by the email application 412.
  • In one aspect of the invention, the [0047] common switch blade 402 may include suitable software and/or hardware that may be utilized to determine what functions should service a particular type or kind of received message. Based on the function that may be associated with the received messages, the common switch blade may steer the message to an appropriate blade server offering a corresponding processing function. In one embodiment of the invention, one or more association tables may be created that contain entries that associate various types of messages to various types of functions and their corresponding processing entities. For example, the blade server 403 may be associated with the processing of voice messages. As an illustration, text-to-speech (TTS) processing and speech encoding and transcoding functions may be associated with blade server 403 and its associated voice application 416. In another example, the blade server 404 and/or short message service application 414 may be associated with the processing of short message service messages. In this regard, any messages received by the common switch blade 402 relating to short message server functions may be steered to the blade server 404 and/or its corresponding short message service application 414. Finally, the blade server 405 and/or email application 412 may be associated with the processing of email messages. As a result, received messages that may be associated with the email function may be steered to the blade server 405 for processing. The associations may be stored in a memory of the blade server as a lookup table. The lookup table may be updated anytime there are new associations or when associations have changed.
  • In an illustrative embodiment of the invention, an email message originating from the [0048] email client 413 may be steered to the common switch blade 402 via the network 406 and an external interface 407. The external interface 407 may be located between the common switch blade 402 and the external network 406. Upon receipt of the email message by the common switch blade 402, the common switch blade 402 may examine the received message and determine that it may be related to an email function based on, for example, a lookup table entry. Accordingly, the common switch blade 402 may steer the email message to the blade server 405 via the interface 410 where it made be processed by the blade server 405 and/or the email application 412. On the other hand, an email message originating from the email application 412 and/or the blade server 405 may be communicated to the common switch blade 402 via the interface 410. Upon receiving the email message from the blade server 405, the common switch blade 402 may determine that the email is destined for the email client 413. Accordingly, the common switch blade 402 may steer the email message to the email client 413 via the network 406.
  • In a similar manner, a short message service message originating from the short [0049] message service client 415 may be steered to the common switch blade 402 via the network 406 and an external interface 407. Upon receipt of the short message service message by the common switch blade 402, the common switch blade 402 may examine the message and determine that it is associated with an email function. Accordingly, the common switch blade 402 may steer the short message service message to the blade server 404 via the interface 409 where it may be processed by the blade server 404 and/or the short message service application 414. A voice message originating from the voice client 417 may be steered to the common switch blade 402 via the network 406 and an external interface 407. Upon receipt of the voice message by the common switch blade 402, the common switch blade 402 may examine the message and determine that it is associated with a voice function. Accordingly, the common switch blade 402 may steer the voice message to the blade server 403 via the interface 408 where it may be processed by the blade server 403 and/or the voice application 416.
  • The integration of multiple blade servers into a [0050] multi-server platform 100 may provide an increased server density and easier management of the multiple servers since all the servers are situated in a single installation enclosure. Additionally, the integration of multiple blade servers may provide a more scalable system with greater reliability. With regard to scalability, more servers may be readily added, provisioned or commissioned to facilitate increased traffic and more servers may be readily removed to facilitate decreased traffic. The integration of multiple blade servers within a single enclosure may more readily facilitate the implantation of fault tolerance and redundancy. Accordingly, the redundancy may ultimately result in substantial reliability and significantly reduced downtime.
  • In accordance with another aspect of the invention, at least a portion of the [0051] blade servers 120 may include one or more of the characteristics as set forth below. The blade server 120 may be modular and self-contained, and may include, for example, a server on a card or a single-board computer (SBC). The blade server 120 may include for example, a computer disposed in an ultra-dense card or board. The ultra-dense card may include, but is not limited to, a central processing unit (CPU), a memory, a hard disk and networking components. The blade server 120 may be hot swappable, hot pluggable and/or adapted for plug-and-play capability. The chassis 110 may provide sharing among the blade servers 120 for one or more of the following: power supplies, cooling fans and access to the network 170 or storage.
  • FIG. 5 is a flowchart illustrating exemplary generic steps for steering traffic in accordance with and embodiment of the present invention. In [0052] step 502, the common switch blade of the multi-server platform receives a packet such as a data packet via the network 170. In step 504, common switch blade may determine which function is associated with the received message. In step 506, the common switch blade may determine which blade server is associated with the determine function for the received message. In step 508, the common switch blade steers the received packet to the blade server associated with the determined function.
  • With reference to step [0053] 504, the switch blade may analyze the packet to determine one or more characteristics that may assist in determining to which of the blade server or blades 120 the packet may be transmitted. In one embodiment, the characteristic may be, for example, a particular field value in a frame of the packet. In another embodiment, the characteristic may be, for example, an enabled or disabled flag in a frame of the packet. In yet another embodiment, the characteristic may be, for example, a particular packet type. Notwithstanding, a particular data type may be processed by a particular blade server 120 and the message may be steered to one or more blade servers for processing.
  • In accordance with an aspect of the invention, at least a portion of the [0054] blade servers 120 may be dedicated to providing different, specific functions within the multi-server platform 100. In one embodiment according to the present invention, if the switch blade 140 receives an encrypted data type from the network 170 and if the switch blade 140 recognizes that the data frame is an encrypted data type, then the switch blade 140 may steer the data frame to the particular blade server 120 that is dedicated to decrypting encrypted data frames. In another embodiment of the invention, if the switch blade 140 receives a packet associated with a database application hosted on the multi-server platform 100 and if the switch blade 140 recognizes the packet type, then the switch blade 140 may steer the packet to a blade server 120 that may be configured, for example, as a database acceleration engine, thereby decreasing the load on other database servers within the multi-server platform 100. Other blade servers in the multi-server platform 100 may be dedicated to perform, for example, virus detection, firewall applications, mission-critical applications, e-mail applications, and printing, as well as other applications, operations and tasks.
  • Some embodiments of the invention may include alerting the [0055] switch blade 140 when a particular packet type is received or when a particular packet is received from a particular source. In this regard, the switch blade 140 may reject or refuse to steer packets from unknown, unfamiliar or unauthorized sources. Accordingly, some received packets may be processed by a default handler if no blade server has been specified to handle a function associated with the message. As a result, the switch blade 140 may steer the packets from unknown, unfamiliar or unauthorized sources to a particular blade server that is dedicated to performing intrusion detection or other types of threat assessment. For example, the particular dedicated blade server may determine that an attack is in progress from an attacker or a hacker linked via the network 170.
  • In light of the foregoing, aspects of the system for processing data in a server may include at least one of a plurality of blade servers that may receive at least one packet and determine at least one function associated with the received packet. The blade server may steer one or more of the packets that are received one or more other blade servers that may be adapted to handle the determined function. Any of the blade servers may be utilized to generate or create at least one association between a particular characteristic of a packet and a particular function associated with that packet. The particular characteristic may be a packet type, a packet field and/or a flag within a portion of the packet. Similarly, one or more blade servers may be utilized to assign a particular blade server to handle the particular function. [0056]
  • In another aspect of the invention, at least one of the blade servers may be utilized to determine which one of the plurality of blade servers may be utilized to handle the function associated with the received packet. Once a determination has been made, the blade server may process the steered packet that it receives. One or more of the blade servers may be utilized to define a default blade server that may be utilized to handle a received packet. At least one of the blade servers may be utilized to steer one or more packets to the default blade server for processing. Steering a packet to a default blade server may occur if a packet is unrecognized or has no association and/or the packet has particular data contained within the packet. A switch blade may be utilized to control controlling steering of a least one packet to a blade server. [0057]
  • Accordingly, the present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein. [0058]
  • The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form. [0059]
  • While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims. [0060]

Claims (30)

What is claimed is:
1. A method for processing data in a server, the method comprising:
receiving at least one packet;
determining at least one function associated with said at least one received packet; and
steering said at least one received packet to at least one of a plurality of blade servers that handles said determined function.
2. The method according to claim 1, further comprising generating at least one association between a particular characteristic of said packet and a particular function associated with said at least one packet
3. The method according to claim 2, wherein said particular characteristic is at least one of a packet type, a packet field and a flag.
4. The method according to claim 2, further comprising assigning at least one of said plurality of blade servers for handling said particular function.
5. The method according to claim 1, further comprising determining which of said plurality of blade servers handles said determined at least one function associated with said at least one received packet.
6. The method according to claim 1, further comprising processing said steered at least one received packet by said at least one of a plurality of blade servers that handles said determined function.
7. The method according to claim 1, further comprising assigning a default blade server for handling said at least one received packet.
8. The method according to claim 7, further comprising steering said at least one packet to said default blade server if at least one of:
said at least one received packet is unrecognized; and
said at least one received packet contains a particular data.
9. The method according to claim 1, further comprising controlling steering of said at least one packet by at least one of said plurality of blade servers.
10. The method according to claim 9, wherein said at least one of said plurality of blade servers controlling said steering is a switch blade.
11. A machine-readable storage having stored thereon, a computer program having at least one code section for processing data in a server, the at least one code section being executable by a machine for causing the machine to perform steps comprising:
receiving at least one packet;
determining at least one function associated with said at least one received packet; and
steering said at least one received packet to at least one of a plurality of blade servers that handles said determined function.
12. The machine-readable storage according to claim 11, further comprising code for generating at least one association between a particular characteristic of said packet and a particular function associated with said at least one packet
13. The machine-readable storage according to claim 12, wherein said particular characteristic is at least one of a packet type, packet field and a flag.
14. The machine-readable storage according to claim 12, further comprising code for assigning at least one of said plurality of blade servers for handling said particular function.
15. The machine-readable storage according to claim 11, further comprising code for determining which of said plurality of blade servers handles said determined at least one function associated with said at least one received packet.
16. The machine-readable storage according to claim 11, further comprising code for processing said steered at least one received packet by said at least one of a plurality of blade servers that handles said determined function.
17. The machine-readable storage according to claim 11, further comprising code for assigning a default blade server for handling said at least one received packet.
18. The machine-readable storage according to claim 17, further comprising code for steering said at least one packet to said default blade server if at least one of:
said at least one received packet is unrecognized; and
said at least one received packet contains a particular data.
19. The machine-readable storage according to claim 11, further comprising code for controlling steering of said at least one packet by at least one of said plurality of blade servers.
20. The machine-readable storage according to claim 19, wherein said at least one of said plurality of blade servers controlling said steering is a switch blade.
21. A system for processing data in a server, the system comprising:
at least one blade server that receives at least one packet;
said at least one blade server determines at least one function associated with said at least one received packet; and
said at least one blade server steers said at least one received packet to at least one of a plurality of other blade servers that handles said determined function.
22. The system according to claim 21, wherein said at least one blade server and at least one of said plurality of other blade servers generates at least one association between a particular characteristic of said packet and a particular function associated with said at least one packet
23. The system according to claim 22, wherein said particular characteristic is at least one of a packet type, a packet field, and a flag.
24. The method according to claim 22, wherein said at least one blade server and said at least one of said plurality of other blade servers assigns at least one of said plurality of blade servers to handle said particular function.
25. The system according to claim 21, wherein said at least one blade server determines which of said plurality of other blade servers handles said determined at least one function associated with said at least one received packet.
26. The system according to claim 21, wherein said at least one of said plurality of other blade servers that handles said determined function processes said steered at least one received packet.
27. The system according to claim 21, wherein said at least one blade server and at least one of said plurality of other blade servers assigns a default blade server for handling said at least one received packet.
28. The system according to claim 27, wherein said at least one blade server and at least one of said plurality of other blade servers steers said at least one packet to said default blade server if at least one of:
said at least one received packet is unrecognized; and
said at least one received packet contains a particular data.
29. The system according to claim 21, further comprising controlling steering of said at least one packet by said at least blade server.
30. The system according to claim 29, wherein said at least blade server that controls said steering is a switch blade.
US10/648,573 2003-02-18 2003-08-26 Method and system for handling traffic for server systems Abandoned US20040199569A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/648,573 US20040199569A1 (en) 2003-02-18 2003-08-26 Method and system for handling traffic for server systems

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US44865603P 2003-02-18 2003-02-18
US45683103P 2003-03-21 2003-03-21
US45871903P 2003-03-28 2003-03-28
US46301403P 2003-04-15 2003-04-15
US10/648,573 US20040199569A1 (en) 2003-02-18 2003-08-26 Method and system for handling traffic for server systems

Publications (1)

Publication Number Publication Date
US20040199569A1 true US20040199569A1 (en) 2004-10-07

Family

ID=32738907

Family Applications (6)

Application Number Title Priority Date Filing Date
US10/647,963 Abandoned US20040199567A1 (en) 2003-02-18 2003-08-26 System and method for integrating multiserver platforms
US10/648,004 Expired - Fee Related US7966422B2 (en) 2003-02-18 2003-08-26 System and method for communicating between servers using a multi-server platform
US10/648,573 Abandoned US20040199569A1 (en) 2003-02-18 2003-08-26 Method and system for handling traffic for server systems
US10/647,962 Expired - Fee Related US7519057B2 (en) 2003-02-18 2003-08-26 System and method for communicating using a multiserver platform
US12/423,333 Expired - Fee Related US8089899B2 (en) 2003-02-18 2009-04-14 System and method for communicating using a multiserver platform
US14/153,179 Abandoned US20140129732A1 (en) 2003-02-18 2014-01-13 Integrated Multiserver Platforms

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US10/647,963 Abandoned US20040199567A1 (en) 2003-02-18 2003-08-26 System and method for integrating multiserver platforms
US10/648,004 Expired - Fee Related US7966422B2 (en) 2003-02-18 2003-08-26 System and method for communicating between servers using a multi-server platform

Family Applications After (3)

Application Number Title Priority Date Filing Date
US10/647,962 Expired - Fee Related US7519057B2 (en) 2003-02-18 2003-08-26 System and method for communicating using a multiserver platform
US12/423,333 Expired - Fee Related US8089899B2 (en) 2003-02-18 2009-04-14 System and method for communicating using a multiserver platform
US14/153,179 Abandoned US20140129732A1 (en) 2003-02-18 2014-01-13 Integrated Multiserver Platforms

Country Status (3)

Country Link
US (6) US20040199567A1 (en)
EP (3) EP1450538B1 (en)
DE (2) DE602004011413T2 (en)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030223418A1 (en) * 2002-06-04 2003-12-04 Sachin Desai Network packet steering
US20040202182A1 (en) * 2003-02-12 2004-10-14 Martin Lund Method and system to provide blade server load balancing using spare link bandwidth
US20070083528A1 (en) * 2000-09-13 2007-04-12 Fortinet, Inc. Switch management system and method
US20070280239A1 (en) * 2006-05-30 2007-12-06 Martin Lund Method and system for power control based on application awareness in a packet network switch
US20070291755A1 (en) * 2002-11-18 2007-12-20 Fortinet, Inc. Hardware-accelerated packet multicasting in a virtual routing system
US20080317040A1 (en) * 2004-11-18 2008-12-25 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20090046728A1 (en) * 2000-09-13 2009-02-19 Fortinet, Inc. System and method for delivering security services
US20090225754A1 (en) * 2004-09-24 2009-09-10 Fortinet, Inc. Scalable ip-services enabled multicast forwarding with efficient resource utilization
US7720053B2 (en) 2002-06-04 2010-05-18 Fortinet, Inc. Service processing switch
US7761743B2 (en) 2002-08-29 2010-07-20 Fortinet, Inc. Fault tolerant routing in a non-hot-standby configuration of a network routing system
US7818452B2 (en) 2000-09-13 2010-10-19 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US7885207B2 (en) 2000-09-13 2011-02-08 Fortinet, Inc. Managing and provisioning virtual routers
US7890663B2 (en) 2001-06-28 2011-02-15 Fortinet, Inc. Identifying nodes in a ring network
US7912936B2 (en) 2000-09-13 2011-03-22 Nara Rajagopalan Managing interworking communications protocols
US8111690B2 (en) 2002-06-04 2012-02-07 Google Inc. Routing traffic through a virtual router-based network switch
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US8260918B2 (en) 2000-09-13 2012-09-04 Fortinet, Inc. Packet routing system and method
CN103186409A (en) * 2011-12-30 2013-07-03 英业达集团(天津)电子技术有限公司 Virtual machine deployment system
US8848718B2 (en) 2002-06-04 2014-09-30 Google Inc. Hierarchical metering in a virtual router-based network switch
US9509638B2 (en) 2003-08-27 2016-11-29 Fortinet, Inc. Heterogeneous media packet bridging
US10454953B1 (en) * 2014-03-28 2019-10-22 Fireeye, Inc. System and method for separated packet processing and static analysis
US10666686B1 (en) 2015-03-25 2020-05-26 Fireeye, Inc. Virtualized exploit detection system
US10798121B1 (en) 2014-12-30 2020-10-06 Fireeye, Inc. Intelligent context aware user interaction for malware detection
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10902117B1 (en) 2014-12-22 2021-01-26 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7124171B1 (en) * 2002-05-23 2006-10-17 Emc Corporation In a networked computing cluster storage system and plurality of servers sharing files, in the event of server unavailability, transferring a floating IP network address from first server to second server to access area of data
US20040199567A1 (en) * 2003-02-18 2004-10-07 Martin Lund System and method for integrating multiserver platforms
US20040181601A1 (en) * 2003-03-14 2004-09-16 Palsamy Sakthikumar Peripheral device sharing
US7738242B2 (en) * 2004-01-08 2010-06-15 Hewlett-Packard Development Company, L.P. System and method for displaying chassis component information
US20060048163A1 (en) * 2004-08-27 2006-03-02 Thierry Bessis Method for routing messages between servers located on the same board
US7519693B2 (en) * 2004-11-18 2009-04-14 International Business Machines Corporation Apparatus, system, and method for integrating an enclosure
WO2006093929A2 (en) * 2005-02-28 2006-09-08 Blade Network Technologies, Inc. Blade server system with rack-switch
US8107822B2 (en) * 2005-05-20 2012-01-31 Finisar Corporation Protocols for out-of-band communication
US20060264178A1 (en) * 2005-05-20 2006-11-23 Noble Gayle L Wireless diagnostic systems
US7899057B2 (en) 2006-04-28 2011-03-01 Jds Uniphase Corporation Systems for ordering network packets
US7822127B1 (en) * 2006-05-15 2010-10-26 Super Micro Computer, Inc. Method and apparatus for minimizing signal loss in transit
US8213333B2 (en) * 2006-07-12 2012-07-03 Chip Greel Identifying and resolving problems in wireless device configurations
US7584325B2 (en) * 2006-07-26 2009-09-01 International Business Machines Corporation Apparatus, system, and method for providing a RAID storage system in a processor blade enclosure
CN101227355B (en) * 2006-08-16 2010-06-09 环达电脑(上海)有限公司 Clustering system and system management architecture thereof
US8526821B2 (en) 2006-12-29 2013-09-03 Finisar Corporation Transceivers for testing networks and adapting to device changes
WO2008119397A1 (en) * 2007-04-02 2008-10-09 Telefonaktiebolaget Lm Ericsson (Publ) Scalability and redundancy in an msc-server blade cluster
US8139036B2 (en) * 2007-10-07 2012-03-20 International Business Machines Corporation Non-intrusive capture and display of objects based on contact locality
US8625592B2 (en) * 2008-02-26 2014-01-07 Cisco Technology, Inc. Blade switch with scalable interfaces
US8151273B2 (en) * 2008-08-28 2012-04-03 Microsoft Corporation Environment wide configuration system
CN101853185B (en) * 2009-03-30 2015-07-08 华为技术有限公司 Blade server and service dispatching method thereof
US8139492B1 (en) 2009-06-09 2012-03-20 Juniper Networks, Inc. Local forwarding bias in a multi-chassis router
US8429316B1 (en) * 2009-07-31 2013-04-23 Marvell International Ltd. Switch low power state in a blade server system
US8817614B1 (en) * 2010-09-16 2014-08-26 Vasona Networks Inc. Policy enforcer having load balancing capabilities
JP5687959B2 (en) * 2011-06-20 2015-03-25 株式会社日立製作所 I / O device sharing method and apparatus
EP2759081B1 (en) * 2011-09-22 2016-11-16 Aviat Networks, Inc. Systems and methods for synchronization of clock signals
DE102012200042A1 (en) * 2012-01-03 2013-07-04 Airbus Operations Gmbh SERVER SYSTEM, AIR OR ROOM VEHICLE AND METHOD
CN103685382B (en) * 2012-09-12 2017-01-25 中兴通讯股份有限公司 Calling method and system of inter-clerk cross-blade server
DE112015006975T5 (en) * 2015-09-25 2019-05-09 Intel Corporation Microelectronic package with wireless interconnection
US10496291B2 (en) 2015-12-18 2019-12-03 Sap Se Maintaining data integrity during data migration

Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188571B1 (en) * 1997-11-03 2001-02-13 Aiwa Raid Technology, Inc. High density RAID subsystem with highly integrated controller
US20020087694A1 (en) * 2000-12-29 2002-07-04 Raja Daoud Apparatus and method for identifying a requested level of service for a transaction
US20020102999A1 (en) * 2000-03-03 2002-08-01 Qualcomm, Inc. Method and apparatus for enabling group communication services in an existing communication system
US20020107971A1 (en) * 2000-11-07 2002-08-08 Bailey Brian W. Network transport accelerator
US20020129354A1 (en) * 2001-03-06 2002-09-12 Bryan Edward Lee Methods and systems for and defining and distributing information alerts
US20020138618A1 (en) * 2000-03-21 2002-09-26 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
US20030051057A1 (en) * 2001-08-10 2003-03-13 Garnett Paul J. Edge protection
US20030135546A1 (en) * 2001-12-19 2003-07-17 Fujitsu Limited Communications system with automatic data delete function and computer program used for the system
US20030188176A1 (en) * 2002-03-26 2003-10-02 International Business Machines Corporation Remotely booting devices in a dense server environment without manually installing authentication parameters on the devices to be booted
US20030185379A1 (en) * 2002-03-27 2003-10-02 O'connor Neil Managing communications in a call centre
US6650641B1 (en) * 1999-07-02 2003-11-18 Cisco Technology, Inc. Network address translation using a forwarding agent
US20030235288A1 (en) * 2002-06-25 2003-12-25 Mccormack Tony Method and apparatus for initiating telephony contact
US20040010545A1 (en) * 2002-06-11 2004-01-15 Pandya Ashish A. Data processing system using internet protocols and RDMA
US20040078439A1 (en) * 2002-10-18 2004-04-22 Jens Staack Messaging method
US6735169B1 (en) * 1999-07-02 2004-05-11 Cisco Technology, Inc. Cascading multiple services on a forwarding agent
US20040136358A1 (en) * 1998-05-29 2004-07-15 Hugh Hind System and method for pushing information from a host system to a mobile data communication device in a wireless data network
US20040153697A1 (en) * 2002-11-25 2004-08-05 Ying-Che Chang Blade server management system
US6785255B2 (en) * 2001-03-13 2004-08-31 Bharat Sastri Architecture and protocol for a wireless communication network to provide scalable web services to mobile access devices
US6848034B2 (en) * 2002-04-04 2005-01-25 International Business Machines Corporation Dense server environment that shares an IDE drive
US6983303B2 (en) * 2002-01-31 2006-01-03 Hewlett-Packard Development Company, Lp. Storage aggregator for enhancing virtualization in data storage networks
US7102996B1 (en) * 2001-05-24 2006-09-05 F5 Networks, Inc. Method and system for scaling network traffic managers
US7171479B2 (en) * 2002-04-26 2007-01-30 International Business Machines Corporation Efficient delivery of boot code images from a network server
US7321926B1 (en) * 2002-02-11 2008-01-22 Extreme Networks Method of and system for allocating resources to resource requests
US7490162B1 (en) * 2002-05-15 2009-02-10 F5 Networks, Inc. Method and system for forwarding messages received at a traffic manager
US7584262B1 (en) * 2002-02-11 2009-09-01 Extreme Networks Method of and system for allocating resources to resource requests based on application of persistence policies
US8004971B1 (en) * 2001-05-24 2011-08-23 F5 Networks, Inc. Method and system for scaling network traffic managers using connection keys
US8611222B1 (en) * 2006-02-01 2013-12-17 F5 Networks, Inc. Selectively enabling packet concatenation based on a transaction boundary

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920566A (en) * 1997-06-30 1999-07-06 Sun Microsystems, Inc. Routing in a multi-layer distributed network element
US6266335B1 (en) * 1997-12-19 2001-07-24 Cyberiq Systems Cross-platform server clustering using a network flow switch
US6510164B1 (en) * 1998-11-16 2003-01-21 Sun Microsystems, Inc. User-level dedicated interface for IP applications in a data packet switching and load balancing system
US6208647B1 (en) * 1999-04-14 2001-03-27 Verizon Laboratories Inc. Multicast extension to data link layer protocols
US6597693B1 (en) * 1999-05-21 2003-07-22 Advanced Micro Devices, Inc. Common scalable queuing and dequeuing architecture and method relative to network switch data rate
US6574240B1 (en) * 2000-01-19 2003-06-03 Advanced Micro Devices, Inc. Apparatus and method for implementing distributed layer 3 learning in a network switch
US7111076B2 (en) * 2000-04-13 2006-09-19 Intel Corporation System using transform template and XML document type definition for transforming message and its reply
US7079537B1 (en) * 2000-04-25 2006-07-18 Advanced Micro Devices, Inc. Layer 3 switching logic architecture in an integrated network switch
US6816905B1 (en) * 2000-11-10 2004-11-09 Galactic Computing Corporation Bvi/Bc Method and system for providing dynamic hosted service management across disparate accounts/sites
US7236490B2 (en) * 2000-11-17 2007-06-26 Foundry Networks, Inc. Backplane interface adapter
US20020085567A1 (en) * 2000-12-28 2002-07-04 Maple Optical Systems, Inc. Metro switch and method for transporting data configured according to multiple different formats
US7339786B2 (en) 2001-03-05 2008-03-04 Intel Corporation Modular server architecture with Ethernet routed across a backplane utilizing an integrated Ethernet switch module
US20020188718A1 (en) * 2001-05-04 2002-12-12 Rlx Technologies, Inc. Console information storage system and method
WO2002091688A1 (en) * 2001-05-07 2002-11-14 Vitesse Semiconductor Corporation A data switching system
US6950895B2 (en) * 2001-06-13 2005-09-27 Intel Corporation Modular server architecture
US20030061382A1 (en) * 2001-09-21 2003-03-27 Dell Products L.P. System and method for naming hosts in a distributed data processing system
US7003563B2 (en) * 2001-11-02 2006-02-21 Hewlett-Packard Development Company, L.P. Remote management system for multiple servers
US6904482B2 (en) * 2001-11-20 2005-06-07 Intel Corporation Common boot environment for a modular server system
US6931568B2 (en) * 2002-03-29 2005-08-16 International Business Machines Corporation Fail-over control in a computer system having redundant service processors
US7124163B2 (en) * 2002-05-24 2006-10-17 Convedia Corporation Data server
US7408957B2 (en) * 2002-06-13 2008-08-05 International Business Machines Corporation Selective header field dispatch in a network processing system
US20040030766A1 (en) * 2002-08-12 2004-02-12 Michael Witkowski Method and apparatus for switch fabric configuration
US7225247B2 (en) * 2002-10-17 2007-05-29 Intel Corporation Serial port redirection using a management controller
US6931475B2 (en) * 2002-11-18 2005-08-16 Quanta Computer Inc. Blade server system with KVM switches
US7188209B2 (en) * 2003-04-18 2007-03-06 Nextio, Inc. Apparatus and method for sharing I/O endpoints within a load store fabric by encapsulation of domain information in transaction layer packets
US20040199567A1 (en) 2003-02-18 2004-10-07 Martin Lund System and method for integrating multiserver platforms

Patent Citations (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188571B1 (en) * 1997-11-03 2001-02-13 Aiwa Raid Technology, Inc. High density RAID subsystem with highly integrated controller
US20040136358A1 (en) * 1998-05-29 2004-07-15 Hugh Hind System and method for pushing information from a host system to a mobile data communication device in a wireless data network
US6735169B1 (en) * 1999-07-02 2004-05-11 Cisco Technology, Inc. Cascading multiple services on a forwarding agent
US6650641B1 (en) * 1999-07-02 2003-11-18 Cisco Technology, Inc. Network address translation using a forwarding agent
US20020102999A1 (en) * 2000-03-03 2002-08-01 Qualcomm, Inc. Method and apparatus for enabling group communication services in an existing communication system
US6928294B2 (en) * 2000-03-03 2005-08-09 Qualcomm, Incorporated Method and apparatus for enabling group communication services in an existing communication system
US20020138618A1 (en) * 2000-03-21 2002-09-26 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
US8380854B2 (en) * 2000-03-21 2013-02-19 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
US20020107971A1 (en) * 2000-11-07 2002-08-08 Bailey Brian W. Network transport accelerator
US20020087694A1 (en) * 2000-12-29 2002-07-04 Raja Daoud Apparatus and method for identifying a requested level of service for a transaction
US20020129354A1 (en) * 2001-03-06 2002-09-12 Bryan Edward Lee Methods and systems for and defining and distributing information alerts
US6785255B2 (en) * 2001-03-13 2004-08-31 Bharat Sastri Architecture and protocol for a wireless communication network to provide scalable web services to mobile access devices
US7102996B1 (en) * 2001-05-24 2006-09-05 F5 Networks, Inc. Method and system for scaling network traffic managers
US8004971B1 (en) * 2001-05-24 2011-08-23 F5 Networks, Inc. Method and system for scaling network traffic managers using connection keys
US20030105859A1 (en) * 2001-08-10 2003-06-05 Garnett Paul J. Intrusion detection
US20030051057A1 (en) * 2001-08-10 2003-03-13 Garnett Paul J. Edge protection
US20030051166A1 (en) * 2001-08-10 2003-03-13 Garnett Paul J. Privacy
US7158781B2 (en) * 2001-08-10 2007-01-02 Sun Microsystems, Inc. System management
US6952659B2 (en) * 2001-08-10 2005-10-04 Sun Microsystems, Inc. Computer system monitoring
US7032037B2 (en) * 2001-08-10 2006-04-18 Sun Microsystems, Inc. Server blade for performing load balancing functions
US20030135546A1 (en) * 2001-12-19 2003-07-17 Fujitsu Limited Communications system with automatic data delete function and computer program used for the system
US6983303B2 (en) * 2002-01-31 2006-01-03 Hewlett-Packard Development Company, Lp. Storage aggregator for enhancing virtualization in data storage networks
US7584262B1 (en) * 2002-02-11 2009-09-01 Extreme Networks Method of and system for allocating resources to resource requests based on application of persistence policies
US7321926B1 (en) * 2002-02-11 2008-01-22 Extreme Networks Method of and system for allocating resources to resource requests
US20030188176A1 (en) * 2002-03-26 2003-10-02 International Business Machines Corporation Remotely booting devices in a dense server environment without manually installing authentication parameters on the devices to be booted
US20030185379A1 (en) * 2002-03-27 2003-10-02 O'connor Neil Managing communications in a call centre
US6848034B2 (en) * 2002-04-04 2005-01-25 International Business Machines Corporation Dense server environment that shares an IDE drive
US7171479B2 (en) * 2002-04-26 2007-01-30 International Business Machines Corporation Efficient delivery of boot code images from a network server
US7490162B1 (en) * 2002-05-15 2009-02-10 F5 Networks, Inc. Method and system for forwarding messages received at a traffic manager
US20040010545A1 (en) * 2002-06-11 2004-01-15 Pandya Ashish A. Data processing system using internet protocols and RDMA
US20030235288A1 (en) * 2002-06-25 2003-12-25 Mccormack Tony Method and apparatus for initiating telephony contact
US20040078439A1 (en) * 2002-10-18 2004-04-22 Jens Staack Messaging method
US20040153697A1 (en) * 2002-11-25 2004-08-05 Ying-Che Chang Blade server management system
US8611222B1 (en) * 2006-02-01 2013-12-17 F5 Networks, Inc. Selectively enabling packet concatenation based on a transaction boundary

Cited By (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8260918B2 (en) 2000-09-13 2012-09-04 Fortinet, Inc. Packet routing system and method
US8069233B2 (en) 2000-09-13 2011-11-29 Fortinet, Inc. Switch management system and method
US20110176552A1 (en) * 2000-09-13 2011-07-21 Fortinet, Inc. Managing interworking communications protocols
US20070083528A1 (en) * 2000-09-13 2007-04-12 Fortinet, Inc. Switch management system and method
US7912936B2 (en) 2000-09-13 2011-03-22 Nara Rajagopalan Managing interworking communications protocols
US9853948B2 (en) 2000-09-13 2017-12-26 Fortinet, Inc. Tunnel interface for securing traffic over a network
US9667604B2 (en) 2000-09-13 2017-05-30 Fortinet, Inc. Tunnel interface for securing traffic over a network
US9391964B2 (en) 2000-09-13 2016-07-12 Fortinet, Inc. Tunnel interface for securing traffic over a network
US7885207B2 (en) 2000-09-13 2011-02-08 Fortinet, Inc. Managing and provisioning virtual routers
US8320279B2 (en) 2000-09-13 2012-11-27 Fortinet, Inc. Managing and provisioning virtual routers
US7818452B2 (en) 2000-09-13 2010-10-19 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US20090046728A1 (en) * 2000-09-13 2009-02-19 Fortinet, Inc. System and method for delivering security services
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US8208409B2 (en) 2001-06-28 2012-06-26 Fortinet, Inc. Identifying nodes in a ring network
US7890663B2 (en) 2001-06-28 2011-02-15 Fortinet, Inc. Identifying nodes in a ring network
US20030223418A1 (en) * 2002-06-04 2003-12-04 Sachin Desai Network packet steering
US20070147368A1 (en) * 2002-06-04 2007-06-28 Fortinet, Inc. Network packet steering via configurable association of processing resources and netmods or line interface ports
US7203192B2 (en) * 2002-06-04 2007-04-10 Fortinet, Inc. Network packet steering
US8111690B2 (en) 2002-06-04 2012-02-07 Google Inc. Routing traffic through a virtual router-based network switch
US8306040B2 (en) 2002-06-04 2012-11-06 Fortinet, Inc. Network packet steering via configurable association of processing resources and network interfaces
US8068503B2 (en) * 2002-06-04 2011-11-29 Fortinet, Inc. Network packet steering via configurable association of processing resources and netmods or line interface ports
US8848718B2 (en) 2002-06-04 2014-09-30 Google Inc. Hierarchical metering in a virtual router-based network switch
US9967200B2 (en) 2002-06-04 2018-05-08 Fortinet, Inc. Service processing switch
US8064462B2 (en) 2002-06-04 2011-11-22 Fortinet, Inc. Service processing switch
US7720053B2 (en) 2002-06-04 2010-05-18 Fortinet, Inc. Service processing switch
US7761743B2 (en) 2002-08-29 2010-07-20 Fortinet, Inc. Fault tolerant routing in a non-hot-standby configuration of a network routing system
US8819486B2 (en) 2002-08-29 2014-08-26 Google Inc. Fault tolerant routing in a non-hot-standby configuration of a network routing system
US8412982B2 (en) 2002-08-29 2013-04-02 Google Inc. Fault tolerant routing in a non-hot-standby configuration of a network routing system
US7933269B2 (en) 2002-11-18 2011-04-26 Fortinet, Inc. Hardware-accelerated packet multicasting in a virtual routing system
US20110200044A1 (en) * 2002-11-18 2011-08-18 Fortinet, Inc. Hardware-accelerated packet multicasting in a virtual routing system
US20070291755A1 (en) * 2002-11-18 2007-12-20 Fortinet, Inc. Hardware-accelerated packet multicasting in a virtual routing system
US8644311B2 (en) 2002-11-18 2014-02-04 Fortinet, Inc. Hardware-accelerated packet multicasting in a virtual routing system
US7835363B2 (en) * 2003-02-12 2010-11-16 Broadcom Corporation Method and system to provide blade server load balancing using spare link bandwidth
US20040202182A1 (en) * 2003-02-12 2004-10-14 Martin Lund Method and system to provide blade server load balancing using spare link bandwidth
US20110066729A1 (en) * 2003-02-12 2011-03-17 Martin Lund Method and system to provide blade server load balancing using spare link bandwidth
US8102874B2 (en) 2003-02-12 2012-01-24 Broadcom Corporation Method and system to provide blade server load balancing using spare link bandwidth
US9853917B2 (en) 2003-08-27 2017-12-26 Fortinet, Inc. Heterogeneous media packet bridging
US9509638B2 (en) 2003-08-27 2016-11-29 Fortinet, Inc. Heterogeneous media packet bridging
US8369258B2 (en) 2004-09-24 2013-02-05 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US8213347B2 (en) 2004-09-24 2012-07-03 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US20090225754A1 (en) * 2004-09-24 2009-09-10 Fortinet, Inc. Scalable ip-services enabled multicast forwarding with efficient resource utilization
US7881244B2 (en) 2004-09-24 2011-02-01 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US20110235548A1 (en) * 2004-11-18 2011-09-29 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US7876683B2 (en) 2004-11-18 2011-01-25 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20090007228A1 (en) * 2004-11-18 2009-01-01 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20080317231A1 (en) * 2004-11-18 2008-12-25 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US7843813B2 (en) 2004-11-18 2010-11-30 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US7869361B2 (en) 2004-11-18 2011-01-11 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20080320553A1 (en) * 2004-11-18 2008-12-25 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20080317040A1 (en) * 2004-11-18 2008-12-25 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US8107376B2 (en) 2004-11-18 2012-01-31 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US7961615B2 (en) 2004-11-18 2011-06-14 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20070280239A1 (en) * 2006-05-30 2007-12-06 Martin Lund Method and system for power control based on application awareness in a packet network switch
US8437352B2 (en) * 2006-05-30 2013-05-07 Broadcom Corporation Method and system for power control based on application awareness in a packet network switch
CN103186409A (en) * 2011-12-30 2013-07-03 英业达集团(天津)电子技术有限公司 Virtual machine deployment system
US10454953B1 (en) * 2014-03-28 2019-10-22 Fireeye, Inc. System and method for separated packet processing and static analysis
US11082436B1 (en) 2014-03-28 2021-08-03 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10902117B1 (en) 2014-12-22 2021-01-26 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US10798121B1 (en) 2014-12-30 2020-10-06 Fireeye, Inc. Intelligent context aware user interaction for malware detection
US10666686B1 (en) 2015-03-25 2020-05-26 Fireeye, Inc. Virtualized exploit detection system

Also Published As

Publication number Publication date
US20040199567A1 (en) 2004-10-07
US20140129732A1 (en) 2014-05-08
DE602004011413T2 (en) 2009-01-29
US20040199568A1 (en) 2004-10-07
US20090201927A1 (en) 2009-08-13
US8089899B2 (en) 2012-01-03
EP1450538A2 (en) 2004-08-25
US7966422B2 (en) 2011-06-21
US7519057B2 (en) 2009-04-14
EP1450539A3 (en) 2005-03-23
EP1450537A2 (en) 2004-08-25
DE602004012633D1 (en) 2008-05-08
EP1450537A3 (en) 2005-03-23
EP1450539A2 (en) 2004-08-25
US20040160900A1 (en) 2004-08-19
EP1450538A3 (en) 2005-03-23
DE602004011413D1 (en) 2008-03-13
EP1450537B1 (en) 2008-03-26
DE602004012633T2 (en) 2009-05-14
EP1450539B1 (en) 2013-03-13
EP1450538B1 (en) 2008-01-23

Similar Documents

Publication Publication Date Title
US20040199569A1 (en) Method and system for handling traffic for server systems
CN113454971B (en) Service acceleration based on remote intelligent NIC
US11388200B2 (en) Scalable network security detection and prevention platform
US9413718B1 (en) Load balancing among a cluster of firewall security devices
US10630660B1 (en) Methods and apparatus for dynamic automated configuration within a control plane of a switch fabric
US9385912B1 (en) Framework for stateless packet tunneling
US20080141350A1 (en) Authentication for computer system management
US20060282838A1 (en) MPI-aware networking infrastructure
CA2414869A1 (en) Method and apparatus for providing computer services
JP2015509631A (en) In-service upgrade for hypervisor or hardware manager hosting virtual traffic manager
US20170331739A1 (en) Data plane integration
US10298620B1 (en) System and method for on-line and off-line streaming application isolation
US10795912B2 (en) Synchronizing a forwarding database within a high-availability cluster
EP1460819A2 (en) Method and system for handling traffic for server systems
US9762701B1 (en) System and method for cached streaming application isolation
US20040059931A1 (en) Pluggable trust adapter architecture, method and program product for processing communications
US11528222B2 (en) Decentralized control plane
US11218918B2 (en) Fast roaming and uniform policy for wireless clients with distributed hashing
US8639842B1 (en) Scalable gateway for multiple data streams
EP4274307A1 (en) Traffic sending method and apparatus, and system and storage medium
CN111786888B (en) Interface isolation method and device
CN116016535A (en) Load balancing system for controlling local application
Seils et al. Deploying Cisco wide area application services
Adiletta et al. Enterprise Edge Convergence: Packet Processing and Computing Silicon in the Data Center.

Legal Events

Date Code Title Description
AS Assignment

Owner name: BROADCOM COMPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KALKUNTE, MOHAN;LUND, MARTIN;REEL/FRAME:014187/0145

Effective date: 20030820

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA

Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001

Effective date: 20160201

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH

Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001

Effective date: 20160201

AS Assignment

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001

Effective date: 20170120

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001

Effective date: 20170120

AS Assignment

Owner name: BROADCOM CORPORATION, CALIFORNIA

Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041712/0001

Effective date: 20170119