US20110032942A1 - Fast path complex flow processing - Google Patents

Fast path complex flow processing Download PDF

Info

Publication number
US20110032942A1
US20110032942A1 US12/906,999 US90699910A US2011032942A1 US 20110032942 A1 US20110032942 A1 US 20110032942A1 US 90699910 A US90699910 A US 90699910A US 2011032942 A1 US2011032942 A1 US 2011032942A1
Authority
US
United States
Prior art keywords
flow
packet
processing operation
attributes
complex
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
US12/906,999
Inventor
Abraham R. Matthews
Naveed Alam
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.)
Fortinet Inc
Original Assignee
Fortinet Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fortinet Inc filed Critical Fortinet Inc
Priority to US12/906,999 priority Critical patent/US20110032942A1/en
Publication of US20110032942A1 publication Critical patent/US20110032942A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • H04L12/2869Operational details of access network equipments
    • H04L12/287Remote access server, e.g. BRAS
    • H04L12/2876Handling of subscriber policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers

Definitions

  • Embodiments of the present invention are related to networking systems, and more particularly to a system and method for processing complex flows.
  • CPE Customer Premises Equipment
  • firewall services cuts into margins and forces significant up-front charges to be imposed on the customer.
  • service providers In order to be successful in today's market, service providers must leverage the public network to offer high-value, differentiated services that maximize margins while controlling capital and operational costs. These services must be rapidly provisioned and centrally managed so that time-to-market and, more importantly, time-to-revenue are minimized.
  • Traditional methods of data network service creation, deployment, and management present significant challenges to accomplishing these goals, calling for a new network service model to be implemented.
  • Enterprise customers are increasingly demanding cost-effective, outsourced connectivity and security services, such as Virtual Private Networks (VPNs) and managed firewall services.
  • Enterprise networks are no longer segregated from the outside world; IT managers are facing mounting pressure to connect disparate business units, satellite sites, business partners, and suppliers to their corporate network, and then to the Internet. This raises a multitude of security concerns that are often beyond the core competencies of enterprise IT departments. To compound the problem, skilled IT talent is an extremely scarce resource. Service providers, with expert staff and world-class technology and facilities, are well positioned to deliver these services to enterprise customers.
  • a packet associated with a complex flow is received by a virtual router (VR) of a VR-based switch.
  • the VR causes an Internet Protocol (IP) flow cache architecture of the VR-based switch to perform a first flow-based packet classification based on a first set of attributes of the packet.
  • IP Internet Protocol
  • a first flow processing operation is identified by performing a first flow cache lookup based on the first flow-based packet classification and the first flow processing operation is performed on the packet.
  • the VR causes the IP flow cache architecture to perform a second flow-based packet classification of the packet based on a second set of attributes of the packet.
  • a second flow processing operation is identified by performing a second flow cache lookup based on the second flow-based packet classification and the second flow processing operation is performed on the packet.
  • the packet is sent to an egress interface of the VR-based switch.
  • FIG. 1 is a block diagram illustrating an IP Service Delivery Platform in accordance with an embodiment of the present invention.
  • FIG. 2 conceptually illustrates a POP access infrastructure in accordance with a network-based managed firewall service model of an embodiment of the present invention.
  • FIG. 3 is a block diagram illustrating various services and functional units of an IPNOS in accordance with an embodiment of the present invention.
  • FIG. 4 conceptually illustrates interactions among various Object Manager layers in accordance with an embodiment of the present invention.
  • FIG. 5 conceptually illustrates an exemplary mapping of virtual routers onto processor elements.
  • FIG. 6 conceptually illustrates segmentation of a switch across a number of different subscribers in accordance with an embodiment of the present invention.
  • FIG. 7 is a block diagram illustrating two sub-layers of the network layer of the protocol stack in accordance with an embodiment of the present invention.
  • FIG. 8 conceptually illustrates inter-module transfers during firewall flow processing in accordance with an embodiment of the present invention.
  • FIG. 9 illustrates packet fragmentation and header content in accordance with an embodiment of the present invention.
  • FIGS. 10 , 11 , 12 and 13 conceptually illustrate various forward and reverse flow scenarios in accordance with an embodiment of the present invention.
  • FIG. 14 conceptually illustrates multi-point-to-point (MP-P) operation in accordance with an embodiment of the present invention.
  • FIG. 15 is a flow diagram illustrating a process of allocating network resources in accordance with an embodiment of the present invention.
  • FIG. 16 conceptually illustrates the performance of multiple flow cache lookups for complex flows in accordance with an embodiment of the present invention.
  • IP Service Delivery Platform 10 includes three distinct components: an intelligent, highly scalable IP Service Processing Switch 12 , a comprehensive Service Management System (SMS) 14 and a powerful Customer Network Management (CNM) system 16 .
  • SMS Service Management System
  • CCM Customer Network Management
  • SMS Service Management System
  • CCM Customer Network Management
  • the service provider replaces the high-capacity access concentration router at the POP with an IP Service Processing Switch 12 .
  • This is a higher-capacity, more robust, and more intelligent access switch, with scalable processing up to 100+ RISC CPUs.
  • additional customer access capacity is added via installing additional port access blades to the IP Service Processing Switch chassis. Unlike conventional access routers, however, additional processor blades can be added to switch 12 to ensure wire-speed performance and service processing.
  • IP Service Processing Switch 12 eliminates the need to deploy CPE devices at each protected customer site. Deployment, configuration, and management of the managed firewall service all take place between IP Service Processing Switch 12 and its Service Management System 14 .
  • Service Management System 14 resides on a high-end UNIX platform at the service provider NOC.
  • the customer has the ability to initiate service provisioning and augmentation via a web-based Customer Network Management tool residing, e.g., at the customer's headquarters site.
  • a web-based Customer Network Management tool residing, e.g., at the customer's headquarters site. This is an entirely different service delivery paradigm, requiring little or no truck rolls and little or no on-site intervention.
  • switch 12 is a 26-slot services processing switch that marries scalable switching, routing and computing resources with an open software architecture to deliver computationally-intense IP services such as VPNs with scalable high performance.
  • switch 12 has a high-speed 22 Gbps redundant dual counter-rotating ring midplane. Slots are configured with four types of Service Blades: Control, Access, Trunk and Processor blades with specialized processing which enables a range of high-performance services including route forwarding, encryption and firewalls.
  • Switch 12 can use switch 12 's virtual routing capabilities, and its ability to turn IP services into discrete and customized objects, to segment and layer services for the first time for tens of thousands of discrete subscriber corporations.
  • processor capacity can be added to switch 12 by adding new processor blades.
  • switch 12 includes an operating system which dynamically distributes services to switch 12 processors.
  • the 26-slot services processing switch corrects for failures using the redundant counter-rotating ring midplane.
  • each Service Blade automatically fails-over to a backup.
  • a switch 12 is described in U.S. patent application Ser. No. 09/661,637, filed on Sep. 13, 2000, now U.S. Pat. No. 7,44,398, which is hereby incorporated by reference in its entirety for all purposes.
  • switch 12 is designed to integrate seamlessly into a SP's preexisting network, whether that be through support of open routing protocols or through its Frame Relay to IPSec interworking solution that integrates new IP-based networks into a corporation's preexisting Frame Relay cloud.
  • switch 12 includes a network operating system (NOS) 20 .
  • NOS network operating system
  • network operating system 20 enables switch 12 to create discrete customized services to specific subscriber corporations by providing them each with a different configuration of service object groups.
  • NOS 20 enables objects within these object groups to be distributed dynamically to customized processors so that application services are receiving the right level of computational support.
  • NOS 20 is designed as an open Application Program Interface (API) that allows general-purpose software or new advanced IP services to be ported into the platform from best of breed third parties in a continual fashion, helping to enrich service provider' investment over time.
  • API Application Program Interface
  • NOS 20 includes a distributed messaging layer (DML) 22 component, an object manager (OM) component 24 layered over DML, control blade redundancy (CBR) 26 for redundant system controllers, a resource manager (RM) 28 for managing separate resource elements and a resource location service (RLS) 30 .
  • DML distributed messaging layer
  • OM object manager
  • CBR control blade redundancy
  • RM resource manager
  • RLS resource location service
  • Resource location service 30 provides load balancing across capable processor elements (PEs) to create an object. PE selection is based on predefined constraints.
  • CBR 26 is layered over DML 22 and OM 24 as shown in FIG. 3 .
  • Object Manager 24 consists of three layers as shown on FIG. 4 .
  • the upper layer titled OM Controller and Database (OMCD) 40 is concerned with managing the VPN and VR configuration. This is the agent that deals with the configuration manager directly.
  • Middle layer 42 entitled OM Object Routing and Interface Global is concerned with managing global (across the switch system) object groups and object configurations.
  • Lower layer 44 entitled OM Object Routing and Interface (OMORI) is concerned with managing local objects and groups as well as routing control information between address spaces based on the location of objects, and interfacing with the object via method invocation.
  • the IPSX object database consists of two types of databases: Global (managed on Master Control Blade by OMORIG) and distributed local databases (managed by OMORI agents on every PE present in the system).
  • Global managed on Master Control Blade by OMORIG
  • distributed local databases manufactured by OMORI agents on every PE present in the system.
  • the global database is a superset of the extracts from local databases.
  • objects represent a basic unit of management for purposes of fault tolerance, computational load balancing, etc.
  • One or more adjacent protocol modules can be placed into a single object.
  • a module can be split across two objects.
  • VRs virtual routers
  • each VR is logical mirror of a stand-alone hardware router.
  • the virtual router (VR) construct is at the heart of the system 10 service segmentation and layering method.
  • a VR has its own route-forwarding table.
  • each VR manages a defined set of routing protocols and supports a number of interfaces.
  • VRs support not only physical interfaces, but also Virtual Interfaces (VIs). This enables communication between VRs within the same switch 12 .
  • VIPs Virtual Interfaces
  • each switch 12 can support up to 10,000 VRs per switch.
  • the system VR (ISPX VR) is no different than any other VR in its make-up. It differs from the other VRs, however, in that it is the router that aggregates traffic from all other VRs and forwards it out to another switch 12 or out to the Internet.
  • the ISPX VR performs routing protocol isolation, for instance by interacting with the core via BGP-4, while running OSPF or RIP to a subscriber VR. It also allows the system to optimize resources, by keeping the subscriber VR routing tables small.
  • a virtual router performs functions similar to a real/normal router.
  • One or more VR would be setup for a subscriber. And like a normal router, VR will route IP traffic for the assigned customer.
  • VPNs virtual private networks
  • a VPN primarily comprises of Virtual Routers (VR) and Virtual Interfaces (VI).
  • service and performance characteristics of a VPN are captured in a Service Level Agreement (SLA) associated with the VPN.
  • SLA Service Level Agreement
  • a virtual router can have multiple interfaces associated with it. These interfaces are termed Virtual Network Connections (VNC) or Virtual Interfaces (VI).
  • VNC Virtual Network Connections
  • VI Virtual Interfaces
  • a VNC or VI corresponds to only one side of a network connection. Virtual Interfaces represent either connection end points for a subscriber or a connection between two virtual routers.
  • a VI mostly captures the network layer properties of an interface (one example of such a property of a VI is its IP address).
  • a VI is mapped to either a Logical Interface or another VI.
  • each VNC/VI is characterized by bandwidth, latency, services, and a set of prioritized queues.
  • VI Bandwidth is measured in bits per second (bps) and is the average number of bits per second transmitted over the VI during a sampling interval. Maximum absolute bandwidth may be set to enforce QOS commitments first then use additional capacity for overflow burst traffic. VI bandwidth can be a multiple of 56 Kbps or 64 Kbps.
  • VNC/VI Services include Application Firewall, Packet Filter, Encryption, NAT, Tunnel Termination, Tunnel origination and authentication (identification of the Virtual RADIUS Server), certificate authority, Accounting. Multiple VNC Services may be configured for the same VNC, directly from the VPN Manager.
  • VNC/VI Queues are used to prioritize different traffic types within a VNC.
  • Each VNC Queue is characterized by bandwidth, latency, and traffic type. The sum of the bandwidth allocated on all VNC Queues for a particular VNC is equal to the VNC Bandwidth for that VNC.
  • IP data traffic authorized for a particular VPN Queue is identified by using one or more of the following parameters: Source IP Network Address, Destination IP Network Address, IP Protocol Type, Port # and the Differentiated Services Byte.
  • a VI may be mapped into a Logical Interface (L1).
  • L1 can be a PPP link, a PVC or SVC of FrameRelay or ATM, an Ethernet or an IP tunnel etc.
  • a LI may be mapped into a physical interface; it is not mandatory for every LI to be mapped to a physical interface.
  • a subscriber's access to each VPN is captured using a Logical Interface (LI) terminating on an Access Blade port.
  • LI Logical Interface
  • One or more VRs are created and associated with a VPN to route subscribers IP traffic as per the subscriber requirements.
  • a subscriber's LI terminating on an Access Blade port is linked with a VR using a Virtual Interface (VI).
  • VIP Virtual Interface
  • One or more virtual network connections (VNCs) are associated with Vis to define subscriber's connectivity to the other end, which for example could be internet, intranet; subscribers regional office etc.
  • Internet Access VNCs may be used to connect a subscriber's VPN Router to the ISP's Internet backbone, thereby providing users at the subscriber premise with secure, dedicated Internet access.
  • VPN Intranet VNCs may be used to connect different subscriber locations securely across an IP backbone or the Internet.
  • VPN Extranet VNCs may be used to connect a subscriber's VPN Router to the VPN Router of another corporation or community of interest to allow access between the entities.
  • VPN RAS VNCs may be used to connect a subscriber's VPN router to an ISP's dial-up remote access server (such as Ascend MAX, Cisco 5800, etc.).
  • the remote access servers (RAS) and/or the dial-in client initiates either a PPTP or L2TP tunnel to the Orion, with or without encryption.
  • FIG. 5 shows a blade 28 having four processor elements (PEs) 30 .
  • Each processor element 30 includes a CPU and memory.
  • each PE 30 is connected to the other PEs 30 and to the rest of switch 12 through connection fabric 32 .
  • two virtual routers 34 are mapped on blade 28 . It should be noted that, in one embodiment, more than one virtual router can be mapped to a single PE 30 , and vice versa. Blade 28 can, therefore, be a shared resource among two or more subscribers.
  • switch 12 The segmenting of switch 12 across a number of different subscribers is shown in FIG. 6 .
  • each VR is divided into a discrete object group, which has many functions and services associated with it; for instance routing, packet filtering and firewall each are individual objects.
  • NA T Network Address Translation
  • VR Virtual Routers
  • VI Virtual Interfaces
  • AKA services the permissible transformations of the packet flows.
  • NOS 20 still, however, has to provide mechanisms to efficiently direct packets from ingress port through protocol stack to Application service thread.
  • the OS also has to provide mechanisms to efficiently direct packets from Application service thread through protocol stack to egress port.
  • the configured VR/VI system defines a semi-static topology within the device boundary (which hereafter is referred to as the Configured Topology). Based on traffic patterns, the configured topology could induce a dynamic topology comprising of shortcuts (which hereafter is referred to as the Flow Topology).
  • NOS 20 supports a dynamic flow based topology as discussed below.
  • the nominal Protocol Stack configuration places topological constraints on packet flows. First, the standard protocol profile and related topology will be described. Then, the issues that arise when the protocol stack is distributed are described.
  • Packet Flow All packets with a common set of attributes comprises a packet flow. Depending on the attributes, the flow may be L3 or L4 flow.
  • Layer 3 Flow Only Layer 3 attributes are used to identify a packet flow.
  • the Layer 3 attributes used are ⁇ Destination IP Address, Source IP Address, IP Protocol>.
  • L4 Flow When possible, both Layer 3 and Layer 4 attributes are used to identify a packet flow. Typically, multiple L4 flows comprise a single L3 flow. If the IP Protocol is TCP or UDP the Layer 4 attributes used are ⁇ Destination Port, Source Port>.
  • Routing Table A common table of routing information that is used by Routing Protocols (e.g. BGP, OSPF, ISIS, RIP). The entries are usually tagged with origin, routing protocol attributes etc. This is also known as RIB (Routing Information Base).
  • RIB Ring Information Base
  • Forming Table A table of best next-hop for prefixes, consulted in the packet forwarding function and derived from the Routing Table. This is also known as FIB (Forwarding Information Base).
  • Flow Topology Based on the actual dynamic flow of L3 and L4 packets a graph of software/services and the communication links between the software/services can be constructed. This graph is the flow topology. The flow topology is derived from and would be a sub-graph of the configured topology if shortcuts are not employed. When shortcuts are employed, there is no direct graph theoretic correlation between the configured and flow topologies.
  • the Network layer is the loci of all packets received, sent or forwarded.
  • the network layer i.e. IP itself
  • IP Interfaces are the link service access points (LSAP in OSI-speak).
  • L3 flows For IP, a packet flow is identified by ⁇ Source, Destination, Protocol>. These will be referred to as L3 flows. These attributes of a packet are preserved across all packet fragments. Preserve the temporal order of L3 flows received on an IP Interface. This reduces the resequencing delay of stream based protocols (such as TCP). Many datagram based applications are intolerant of packet re-ordering (which is not unreasonable if the application is transported via a UDP tunnel without order preservation guarantees).
  • IP Packet ID which is critical for packet fragmentation and reassembly, should be unique within a L3 flow originating from local applications. (This is actually required by RFC-791, Section 2.3, page 8).
  • Packet forwarding needs to consult the Forwarding Table or Forwarding Information Base (FIB). Most implementations maintain a single forwarding table. High performance implementations typically maintain multiple synchronized instances of the forwarding table.
  • FIB Forwarding Information Base
  • the processing sequence is:
  • IP Local sends packet to subscriber
  • IP Fwd module Subscriber IP Fwd forwards it to ISP IP Fwd module
  • ISP IP Fwd module sends it to ISP line interface
  • steps 2, 3, 4, 5, 6 require an inter-PE transfer. Each of these steps may represent a backplane crossing.
  • the receiver may receive the fragments in arbitrary order. Thus the receiver may only use ⁇ Source, Destination, Protocol> to determine the packet flow. The receiver can not create per packet flow state which uses the ID field to decide on the L4 flow for all fragments on the false assumption that the first fragment contains L4 information.
  • Fragmented packets are reassembled before the L4 flow can be inferred. This has implications for L4 oriented services like NAT. For NAT to work correctly, the gateway must reassemble every fragmented packet before it can perform its packet transformation. This is a tremendous burden and many NAT implementations (including IPSX) simply do not transform the fragments subsequent to the first.
  • the forward flows are shown as originating at a Subscriber interface and ending at an ISP interface in the upper half of FIGS. 10-13 .
  • the reverse flow is shown in the lower half of each figure.
  • objects communicate with each other in 1 of 2 ways—namely Object IOCTLs and Object Channels.
  • the Object Channel is point-to-point (P-P), light weight inter-object communication transport. This maps well into the Configured Topology.
  • MP-P multi-point-to-point
  • MP-P can be constructed in parallel to the P-P Object Channel. This permits the co-existence of the 2 communication models. This is shown in FIG. 14 .
  • Both ends of a P-P use the initialization function obj_init_channel( ).
  • the initialization function is obj_mpp_tx_init_channel( ).
  • the initialization function is obj_mpp_rx_init_channel( ).
  • CEP 1 is initialized as both an MP-P receiver and as a P-P receiver/sender. When CEP 1 was initialized as an MP-P receiver, it got assigned a globally unique address.
  • CEP 2 is initialized solely as a P-P receiver/sender.
  • CEP 10 and 11 are initialized as MP-P sender with target address of CEP 1 's MP-P address. Note that a MP-P sender can not be initialized as a P-P receiver/sender. Additionally, modules that have CEP 1 's MP-P address cans send anonymously.
  • the IP Forwarding agent uses the Forwarding Information Base (FIB) to make its forwarding decision.
  • FIB Forwarding Information Base
  • VR Virtual Router
  • IP Forwarding agents This requires the IP Forwarding agents to maintain a Replicated FIB.
  • the Replicated FIB need not be constrained to only IP Forwarding agents within a VR.
  • a Replicated FIB may be used by other objects of a VR to make forwarding decisions to support shortcuts.
  • FIG. 8 shows one possible functional decomposition of NOS 20 functionally distributed protocol stack. The functional decomposition simply cuts the protocol stack at convenient horizontal planes with no duplication of function.
  • a different functional decomposition of the protocol stack is proposed. This will duplicate functionality in multiple objects.
  • Table 1 contrasts the assignment of functionality to objects under the two models of Distributed Protocol Stack. It is a logical extension of the VR flow cache that is employed to speed up packet forwarding.
  • Object Manager 24 consists of three layers as shown on FIG. 4 .
  • the upper layer titled OM Controller and Database (OMCD) 40 is concerned with managing the VPN and VR configuration. This is the agent that deals with the configuration manager directly.
  • Middle layer 42 entitled OM Object Routing and Interface Global is concerned with managing global (across the switch system) object groups and object configurations.
  • Lower layer 44 entitled OM Object Routing and Interface (OMORI) is concerned with managing local objects and groups as well as routing control information between address spaces based on the location of objects, and interfacing with the object via method invocation.
  • the IPSX object database consists of two types of databases: Global (managed on Master Control Blade by OMORIG) and distributed local databases (managed by OMORI agents on every PE present in the system).
  • Global managed on Master Control Blade by OMORIG
  • distributed local databases manufactured by OMORI agents on every PE present in the system.
  • the global database is a superset of the extracts from local databases.
  • Objects represent a basic unit of management for purposes of fault tolerance, computational load balancing, etc.
  • One or more adjacent protocol modules can be placed into a single object. It is also possible that a module is split across two objects.
  • a configuration management system connected to OMCD 40 is used to configure the VPNs and VRs as shown in Appendix A and is described in U.S. patent application Ser. No. 09/663,485, filed Sep. 13, 2000, now U.S. Pat. No. 7,272,643, which is incorporated herein by reference in its entirety for all purposes.
  • System 10 instead of deploying CPE firewalls remotely at the enterprise subscriber site, System 10 provides Network Associates, Incorporated's (NAI's) Gauntlet Application Proxy Firewalls from the SP POP where they can be centrally managed and supported. NOS 20 is the foundation that enables third-party applications like Gauntlet to be delivered on switch 12 .
  • NAI's Network Associates, Incorporated's
  • the application proxy firewall model offers far superior security control because it provides full application-level awareness of attempted connections by examining everything at the highest layer of the protocol stack.
  • Gauntlet Once NAI's Gauntlet Application Proxy Firewall is configured, it offers the most robust form of access control on the market. Gauntlet lets access control policies to be established at Layer 7 and thus enables specific application-based rules to be made. For instance, users coming into the network from the Internet are allowed to do an FTP “get,” but not a “put.” Additionally, because the Gauntlet firewall is a proxy solution that acts as the intermediary, preventing the end-stations from communicating directly with the firewall. As a result, this solution offers significantly better protection against OS directed denial of service attacks. Another important aspect of the Application Proxy Firewall is the incremental services provided by switch 12 such as Intrusion Detection and Anti-virus scanning, which are not available in firewall application models such as stateful inspection.
  • FIG. 15 is a flow diagram illustrating a process of allocating network resources in accordance with an embodiment of the present invention.
  • a virtual router (VR)-based switch configured for operation at an Internet point-of-presence (POP) of a service provider is provided.
  • POP Internet point-of-presence
  • a network operating system is provided on each of the processing elements of the VR-based switch.
  • resources of the VR-based switch are segmented among multiple subscribers.
  • the resources are segmented between a first subscriber of the service provider and a second subscriber of the service provider.
  • a first set of VRs of the VR-based switch are associated with the first subscriber.
  • a second set of VRs of the VR-based switch are associated with the second subscriber.
  • a system VR is defined within the VR-based switch.
  • the system VR may aggregate traffic from the first set of VRs and the second set of VRs and transfer the aggregated traffic across the Internet.
  • the first set of VRs are mapped onto a first set of processing elements (PEs) of the VR-based switch.
  • PEs processing elements
  • the first set of VRs are mapped onto a first set of PEs of the VR-based switch. According to one embodiment, at least one of the first set of VRs spans two or more of the PEs of the VR-based switch.
  • the second set of VRs are mapped onto a second set of PEs of the VR-based switch.
  • a shared processing element is part of the first set of PEs and the second set of PEs.
  • at least one of the second set of VRs spans two or more of the PEs of the VR-based switch.
  • a first set of customized services is configured to be provided by the VR-based switch on behalf of the first subscriber.
  • a first service object group is allocated to the first set of VRs.
  • the first service object group may include a service object corresponding to each service of the first set of customized services and the service objects may be dynamically distributed by the NOS to customized processors of the first set of PEs to achieve desired computational support.
  • the first set of customized services includes various combinations of firewalling, virtual private networking, encryption, traffic shaping, routing and network address translation (NAT).
  • a second set of customized services is configured to be provided by the VR-based switch on behalf of the second subscriber.
  • a second service object group is allocated to the second set of VRs.
  • the second service object group may include a service object corresponding to each service of the second set of customized services and the service objects may be dynamically distributed by the NOS to customized processors of the second set of PEs to achieve desired computational support.
  • the second set of customized services includes various combinations of firewalling, virtual private networking, encryption, traffic shaping, routing and network address translation (NAT).
  • a first configured topology is defined among the first set of VRs by configuring virtual interfaces (VIs) of the first set of VRs to provide desired paths for packet flows associated with the first subscriber and permissible transformations of the packet flows associated with the first subscriber.
  • VIPs virtual interfaces
  • a second configured topology is defined among the second set of VRs by configuring virtual interfaces (VIs) of the second set of VRs to provide desired paths for packet flows associated with the second subscriber and permissible transformations of the packet flows associated with the second subscriber.
  • VIPs virtual interfaces
  • FIG. 16 conceptually illustrates the performance of multiple flow cache lookups for complex flows in accordance with an embodiment of the present invention.
  • Complex flows including, but not limited to, strict L3 flows, tunneled flows and encrypted flows add another level of complexity to flow processing.
  • a packet's L3 and L4 attributes transform from one type to the other.
  • the IP flow cache architecture applies packet classifications multiple times as the L3 and L4 attributes change. This results in multiple cache lookups for the same ingress flow and enables a VR to finish processing of packets through cache operations only, whereas traditional routers would normally switch to the slow path (i.e., exception processing) to process more complex packet flows.
  • processing of ingress flow 1610 involves three lookups into flow cache 1600 .
  • the first cache lookup 1611 results in a cache flow hit that identifies a cache flow entry 1601 directing the VR to reassemble the fragmented packets.
  • the second cache lookup results in a cache flow hit 1612 that identifies a cache flow entry 1602 directing the VR to decrypt the IPSec tunneled packet.
  • the third cache lookup results in a cache flow hit 1613 that identifies a cache flow entry 1603 directing the VR to forward the inner IP packet.
  • each packet associated with a complex flow such as ingress flow 1610 , is processed through operations defined only by the flow cache 1600 thereby avoiding slow path processing.
  • the service provider's security staff consults with the customer in order to understand the corporate network infrastructure and to develop appropriate security policies (Note: this is a similar process to the CPE model).
  • the NOC security staff remotely accesses the IP Service Processing Switch (using the Service Management System) at the regional POP serving the enterprise customer, and the firewall service is provisioned and configured remotely.
  • IP Service Processing Switch using the Service Management System
  • the firewall service is provisioned and configured remotely.
  • Firewall inspection and access control functions take place at the IP Service Processing Switch and across the WAN, while the enterprise's secure leased line or Frame Relay PVC access link remains in place.
  • the customer interface is between its router and the IP Service Processing Switch (acting as an access router), just as it was prior to the rollout of the managed firewall service. Additionally, the customer has visibility into and control over its segment of the network via the CNM that typically resides at the headquarters site.
  • the network-based firewall model also enables service providers to quickly and cost-effectively roll out managed firewall solutions at all enterprise customer sites. As a result, secure Internet access can be provided to every site, eliminating the performance and complexity issues associated with backhauling Internet traffic across the WAN to and from a centralized secure access point.
  • IP Service Delivery Platform is designed to enable value-added public network services, it is a carrier-grade system that is more robust and higher-capacity than traditional access routers, and an order of magnitude more scaleable and manageable than CPE-based systems.
  • the platform's Service Management System enables managed firewall services, as well as a host of other managed network services, to be provisioned, configured, and managed with point-and-click simplicity, minimizing the need for expensive, highly skilled security professionals and significantly cutting service rollout lead-times.
  • the Service Management System is capable of supporting a fleet of IP Service Processing Switches and tens of thousands of enterprise networks, and interfaces to the platform at the POP from the NOC via IP address. Support for incremental additional platforms and customers is added via modular software add-ons. Services can be provisioned via the SMS system's simple point and click menus, as well as requested directly by the customer via the CNM system.
  • IP Service Delivery Platform in the carrier network enables service providers to rapidly turn-up high value, managed network-based services at a fraction of the capital and operational costs of CPE-based solutions. This enables service providers to gain a least-cost service delivery and support structure. Additionally, it enables them to gain higher margins and more market share than competitors utilizing traditional service delivery mechanisms—even while offering managed firewall services at a lower customer price point.
  • Managed, network-based firewall services provide the same feature/functionality of a CPE-based service while greatly reducing capital and operational costs, as well as complexity.
  • the managed, network-based firewall service model enables WAN service providers to minimize service creation and delivery costs. This model virtually eliminates the need for onsite installation, configuration, and troubleshooting truck rolls, drastically reducing operational costs. This lower cost structure creates opportunities to increase revenues and/or gain market share by value-pricing the service. Services can be rapidly provisioned via a centralized services management system, shortening delivery cycles and enabling service providers to begin billing immediately. Additional services can be rapidly crafted and deployed via the same efficient delivery mechanism.
  • the network-based service model is a rapid and cost-effective way for service providers to deploy high-value managed firewall solutions.
  • This model requires a comprehensive service delivery platform consisting of robust network hardware, an intelligent and scaleable services management system, and a feature-rich Customer Network Management (CNM) tool to mitigate customers' fears of losing control of network security.
  • CCM Customer Network Management
  • computer is defined to include any digital or analog data processing unit. Examples include any personal computer, workstation, set top box, mainframe, server, supercomputer, laptop or personal digital assistant capable of embodying the inventions described herein.
  • Examples of articles comprising computer readable media are floppy disks, hard drives, CD-ROM or DVD media or any other read-write or read-only memory device.

Abstract

Methods and systems for processing complex flows are provided. According to one embodiment, a packet associated with a complex flow is received. A first flow-based packet classification is performed based on a first set of attributes of the packet. A first flow processing operation is identified by performing a first flow cache lookup based on the first flow-based packet classification and the first flow processing operation is performed on the packet. After performing the first flow processing operation on the packet, a second flow-based packet classification of the packet is performed based on a second set of attributes of the packet. A second flow processing operation is identified by performing a second flow cache lookup based on the second flow-based packet classification and the second flow processing operation is performed on the packet. Finally, the packet is sent to an egress interface.

Description

  • This application is a continuation of U.S. patent application Ser. No. 12/140,249, filed Jun. 16, 2008, which is a continuation of U.S. patent application Ser. No. 09/661,130, filed Sep. 13, 2000, now U.S. Pat. No. 7,389,358, both of which are hereby incorporated by reference in their entirety for all purposes.
  • FIELD
  • Embodiments of the present invention are related to networking systems, and more particularly to a system and method for processing complex flows.
  • BACKGROUND
  • Internet or WAN service providers are operating in a crowded marketplace where cost effectiveness is critical. Operational costs present a significant challenge to service providers. Cumbersome, manual provisioning processes are the primary culprits. Customer orders must be manually entered and processed through numerous antiquated back-end systems that have been pieced together. Once the order has been processed, a truck roll is required for onsite installation and configuration of Customer Premises Equipment (CPE), as well as subsequent troubleshooting tasks.
  • Presently, the delivery of firewall services requires the deployment of a specialized piece of Customer Premises Equipment (CPE) to every network to be protected. This model of service delivery creates an expensive up-front capital investment, as well as significant operational expenses that are associated with onsite installation and management of thousands of distributed devices. The results are service delivery delays, increased customer start-up costs and/or thinner service provider margins.
  • The slow and expensive process of deploying firewall services cuts into margins and forces significant up-front charges to be imposed on the customer. In order to be successful in today's market, service providers must leverage the public network to offer high-value, differentiated services that maximize margins while controlling capital and operational costs. These services must be rapidly provisioned and centrally managed so that time-to-market and, more importantly, time-to-revenue are minimized. Traditional methods of data network service creation, deployment, and management present significant challenges to accomplishing these goals, calling for a new network service model to be implemented.
  • Enterprise customers are increasingly demanding cost-effective, outsourced connectivity and security services, such as Virtual Private Networks (VPNs) and managed firewall services. Enterprise networks are no longer segregated from the outside world; IT managers are facing mounting pressure to connect disparate business units, satellite sites, business partners, and suppliers to their corporate network, and then to the Internet. This raises a multitude of security concerns that are often beyond the core competencies of enterprise IT departments. To compound the problem, skilled IT talent is an extremely scarce resource. Service providers, with expert staff and world-class technology and facilities, are well positioned to deliver these services to enterprise customers.
  • SUMMARY
  • Methods and systems are described for processing complex flows. According to one embodiment, a packet associated with a complex flow is received by a virtual router (VR) of a VR-based switch. The VR causes an Internet Protocol (IP) flow cache architecture of the VR-based switch to perform a first flow-based packet classification based on a first set of attributes of the packet. A first flow processing operation is identified by performing a first flow cache lookup based on the first flow-based packet classification and the first flow processing operation is performed on the packet. After performing the first flow processing operation on the packet, the VR causes the IP flow cache architecture to perform a second flow-based packet classification of the packet based on a second set of attributes of the packet. A second flow processing operation is identified by performing a second flow cache lookup based on the second flow-based packet classification and the second flow processing operation is performed on the packet. Finally, the packet is sent to an egress interface of the VR-based switch.
  • Other features of embodiments of the present invention will be apparent from the accompanying drawings and from the detailed description that follows.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Embodiments of the present invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
  • FIG. 1 is a block diagram illustrating an IP Service Delivery Platform in accordance with an embodiment of the present invention.
  • FIG. 2 conceptually illustrates a POP access infrastructure in accordance with a network-based managed firewall service model of an embodiment of the present invention.
  • FIG. 3 is a block diagram illustrating various services and functional units of an IPNOS in accordance with an embodiment of the present invention.
  • FIG. 4. conceptually illustrates interactions among various Object Manager layers in accordance with an embodiment of the present invention.
  • FIG. 5 conceptually illustrates an exemplary mapping of virtual routers onto processor elements.
  • FIG. 6 conceptually illustrates segmentation of a switch across a number of different subscribers in accordance with an embodiment of the present invention.
  • FIG. 7 is a block diagram illustrating two sub-layers of the network layer of the protocol stack in accordance with an embodiment of the present invention.
  • FIG. 8 conceptually illustrates inter-module transfers during firewall flow processing in accordance with an embodiment of the present invention.
  • FIG. 9 illustrates packet fragmentation and header content in accordance with an embodiment of the present invention.
  • FIGS. 10, 11, 12 and 13 conceptually illustrate various forward and reverse flow scenarios in accordance with an embodiment of the present invention.
  • FIG. 14 conceptually illustrates multi-point-to-point (MP-P) operation in accordance with an embodiment of the present invention.
  • FIG. 15 is a flow diagram illustrating a process of allocating network resources in accordance with an embodiment of the present invention.
  • FIG. 16 conceptually illustrates the performance of multiple flow cache lookups for complex flows in accordance with an embodiment of the present invention.
  • DETAILED DESCRIPTION
  • In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
  • Some portions of the detailed descriptions which follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the ways used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar computing device, that manipulates and transforms data represented as physical (e.g., electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
  • While IT managers clearly see the value in utilizing managed network services, there are still barriers to adoption. Perhaps the most significant of these is the fear of losing control of the network to the service provider. In order to ease this fear, a successful managed network service offering must provide comprehensive visibility to the customer, enabling them to view configurations and performance statistics, as well as to request updates and changes. By providing IT managers with powerful Customer Network Management (CNM) tools, one can bolsters confidence in the managed network service provider and can actually streamline the service provisioning and maintenance cycle.
  • While service providers recognize the tremendous revenue potential of managed firewall services, the cost of deploying, managing and maintaining such services via traditional CPE-based methods is somewhat daunting. Service providers are now seeking new service delivery mechanisms that minimize capital and operational costs while enabling high-margin, value-added public network services that are easily provisioned, managed, and repeated. Rolling out a network-based managed firewall service is a promising means by which to accomplish this. Deploying an IP Service Delivery Platform in the service provider network brings the intelligence of a managed firewall service out of the customer premises and into the service provider's realm of control.
  • One such IP Service Delivery Platform 10 is shown in FIG. 1. In the embodiment shown in FIG. 1, IP Service Delivery Platform 10 includes three distinct components: an intelligent, highly scalable IP Service Processing Switch 12, a comprehensive Service Management System (SMS) 14 and a powerful Customer Network Management (CNM) system 16. Service Management System (SMS) 14 is used to enable rapid service provisioning and centralized system management. Customer Network Management (CNM) system 16 provides enterprise customers with detailed network and service performance systems, enable self-provisioning. At the same time, system 16 eases IT managers' fears of losing control of managed network services.
  • In one embodiment, such as is shown in FIG. 2 for a network-based managed firewall service model, the service provider replaces the high-capacity access concentration router at the POP with an IP Service Processing Switch 12. This is a higher-capacity, more robust, and more intelligent access switch, with scalable processing up to 100+ RISC CPUs. Just as with the access router, additional customer access capacity is added via installing additional port access blades to the IP Service Processing Switch chassis. Unlike conventional access routers, however, additional processor blades can be added to switch 12 to ensure wire-speed performance and service processing.
  • The intelligence resident in IP Service Processing Switch 12 eliminates the need to deploy CPE devices at each protected customer site. Deployment, configuration, and management of the managed firewall service all take place between IP Service Processing Switch 12 and its Service Management System 14. In the embodiment shown in FIG. 2, Service Management System 14 resides on a high-end UNIX platform at the service provider NOC.
  • In one embodiment, the customer has the ability to initiate service provisioning and augmentation via a web-based Customer Network Management tool residing, e.g., at the customer's headquarters site. This is an entirely different service delivery paradigm, requiring little or no truck rolls and little or no on-site intervention.
  • In one embodiment, switch 12 is a 26-slot services processing switch that marries scalable switching, routing and computing resources with an open software architecture to deliver computationally-intense IP services such as VPNs with scalable high performance. In one embodiment, switch 12 has a high-speed 22 Gbps redundant dual counter-rotating ring midplane. Slots are configured with four types of Service Blades: Control, Access, Trunk and Processor blades with specialized processing which enables a range of high-performance services including route forwarding, encryption and firewalls.
  • Service providers can use switch 12's virtual routing capabilities, and its ability to turn IP services into discrete and customized objects, to segment and layer services for the first time for tens of thousands of discrete subscriber corporations. In addition, processor capacity can be added to switch 12 by adding new processor blades.
  • In one embodiment switch 12 includes an operating system which dynamically distributes services to switch 12 processors.
  • In one embodiment, the 26-slot services processing switch corrects for failures using the redundant counter-rotating ring midplane.
  • In one embodiment, each Service Blade automatically fails-over to a backup. One embodiment of a switch 12 is described in U.S. patent application Ser. No. 09/661,637, filed on Sep. 13, 2000, now U.S. Pat. No. 7,44,398, which is hereby incorporated by reference in its entirety for all purposes.
  • In one embodiment, switch 12 is designed to integrate seamlessly into a SP's preexisting network, whether that be through support of open routing protocols or through its Frame Relay to IPSec interworking solution that integrates new IP-based networks into a corporation's preexisting Frame Relay cloud.
  • The operating system will be described next.
  • In one embodiment, switch 12 includes a network operating system (NOS) 20. In one embodiment, network operating system 20 enables switch 12 to create discrete customized services to specific subscriber corporations by providing them each with a different configuration of service object groups. NOS 20 enables objects within these object groups to be distributed dynamically to customized processors so that application services are receiving the right level of computational support.
  • In one embodiment, NOS 20 is designed as an open Application Program Interface (API) that allows general-purpose software or new advanced IP services to be ported into the platform from best of breed third parties in a continual fashion, helping to enrich service provider' investment over time.
  • In one embodiment, NOS 20 includes a distributed messaging layer (DML) 22 component, an object manager (OM) component 24 layered over DML, control blade redundancy (CBR) 26 for redundant system controllers, a resource manager (RM) 28 for managing separate resource elements and a resource location service (RLS) 30. Resource location service 30 provides load balancing across capable processor elements (PEs) to create an object. PE selection is based on predefined constraints.
  • In one embodiment, CBR 26 is layered over DML 22 and OM 24 as shown in FIG. 3.
  • In one embodiment, Object Manager 24 consists of three layers as shown on FIG. 4. The upper layer titled OM Controller and Database (OMCD) 40 is concerned with managing the VPN and VR configuration. This is the agent that deals with the configuration manager directly. Middle layer 42 entitled OM Object Routing and Interface Global is concerned with managing global (across the switch system) object groups and object configurations. Lower layer 44 entitled OM Object Routing and Interface (OMORI) is concerned with managing local objects and groups as well as routing control information between address spaces based on the location of objects, and interfacing with the object via method invocation.
  • In one embodiment, the IPSX object database consists of two types of databases: Global (managed on Master Control Blade by OMORIG) and distributed local databases (managed by OMORI agents on every PE present in the system). In one such embodiment, the global database is a superset of the extracts from local databases.
  • One such network operating system 20 is described in U.S. patent application Ser. No. 09/663,483, filed Sep. 13, 2000, now U.S. Pat. No. 7,487,232, which is hereby incorporated by reference in its entirety for all purposes.
  • In one embodiment, objects represent a basic unit of management for purposes of fault tolerance, computational load balancing, etc. One or more adjacent protocol modules can be placed into a single object. In addition, it is also possible that a module can be split across two objects.
  • In one embodiment, virtual routers (VRs) are mapped onto the physical processor elements of switch 12. In one such embodiment, each VR is logical mirror of a stand-alone hardware router. The virtual router (VR) construct is at the heart of the system 10 service segmentation and layering method. By enabling each subscriber entity to have a pool of VRs across multiple POPs for its VPN, the system is able to support tens of thousands of discrete entities within a single platform.
  • Just like a traditional router, a VR has its own route-forwarding table. In addition, each VR manages a defined set of routing protocols and supports a number of interfaces. In one embodiment, VRs support not only physical interfaces, but also Virtual Interfaces (VIs). This enables communication between VRs within the same switch 12.
  • In one embodiment, each switch 12 can support up to 10,000 VRs per switch. Fundamentally, the system VR (ISPX VR) is no different than any other VR in its make-up. It differs from the other VRs, however, in that it is the router that aggregates traffic from all other VRs and forwards it out to another switch 12 or out to the Internet. By isolating the subscriber level VRs from a direct Internet adjacency, system 10 is able to minimize its complexity to one element in the system. In addition, the ISPX VR performs routing protocol isolation, for instance by interacting with the core via BGP-4, while running OSPF or RIP to a subscriber VR. It also allows the system to optimize resources, by keeping the subscriber VR routing tables small.
  • A virtual router performs functions similar to a real/normal router. One or more VR would be setup for a subscriber. And like a normal router, VR will route IP traffic for the assigned customer.
  • In one embodiment, virtual private networks (VPNs) are logical abstractions. Each VPN represents the logical part of network visible or associated with a subscriber or ISP. A VPN primarily comprises of Virtual Routers (VR) and Virtual Interfaces (VI). In one such embodiment, service and performance characteristics of a VPN are captured in a Service Level Agreement (SLA) associated with the VPN.
  • In one embodiment, a virtual router can have multiple interfaces associated with it. These interfaces are termed Virtual Network Connections (VNC) or Virtual Interfaces (VI). A VNC or VI corresponds to only one side of a network connection. Virtual Interfaces represent either connection end points for a subscriber or a connection between two virtual routers. A VI mostly captures the network layer properties of an interface (one example of such a property of a VI is its IP address). A VI is mapped to either a Logical Interface or another VI. In one such embodiment, each VNC/VI is characterized by bandwidth, latency, services, and a set of prioritized queues.
  • VI Bandwidth is measured in bits per second (bps) and is the average number of bits per second transmitted over the VI during a sampling interval. Maximum absolute bandwidth may be set to enforce QOS commitments first then use additional capacity for overflow burst traffic. VI bandwidth can be a multiple of 56 Kbps or 64 Kbps.
  • VNC/VI Services include Application Firewall, Packet Filter, Encryption, NAT, Tunnel Termination, Tunnel origination and authentication (identification of the Virtual RADIUS Server), certificate authority, Accounting. Multiple VNC Services may be configured for the same VNC, directly from the VPN Manager.
  • VNC/VI Queues are used to prioritize different traffic types within a VNC. Each VNC Queue is characterized by bandwidth, latency, and traffic type. The sum of the bandwidth allocated on all VNC Queues for a particular VNC is equal to the VNC Bandwidth for that VNC. IP data traffic authorized for a particular VPN Queue is identified by using one or more of the following parameters: Source IP Network Address, Destination IP Network Address, IP Protocol Type, Port # and the Differentiated Services Byte.
  • A VI may be mapped into a Logical Interface (L1). A LI can be a PPP link, a PVC or SVC of FrameRelay or ATM, an Ethernet or an IP tunnel etc. A LI may be mapped into a physical interface; it is not mandatory for every LI to be mapped to a physical interface.
  • In one embodiment, a subscriber's access to each VPN is captured using a Logical Interface (LI) terminating on an Access Blade port. One or more VRs are created and associated with a VPN to route subscribers IP traffic as per the subscriber requirements. In one embodiment, a subscriber's LI terminating on an Access Blade port is linked with a VR using a Virtual Interface (VI). One or more virtual network connections (VNCs) are associated with Vis to define subscriber's connectivity to the other end, which for example could be internet, intranet; subscribers regional office etc.
  • For instance, Internet Access VNCs may be used to connect a subscriber's VPN Router to the ISP's Internet backbone, thereby providing users at the subscriber premise with secure, dedicated Internet access.
  • VPN Intranet VNCs may be used to connect different subscriber locations securely across an IP backbone or the Internet.
  • VPN Extranet VNCs may be used to connect a subscriber's VPN Router to the VPN Router of another corporation or community of interest to allow access between the entities.
  • VPN RAS VNCs may be used to connect a subscriber's VPN router to an ISP's dial-up remote access server (such as Ascend MAX, Cisco 5800, etc.). The remote access servers (RAS) and/or the dial-in client initiates either a PPTP or L2TP tunnel to the Orion, with or without encryption.
  • The way that virtual routers map on processor elements can be understood in the context of FIG. 5. FIG. 5 shows a blade 28 having four processor elements (PEs) 30. Each processor element 30 includes a CPU and memory. In addition, each PE 30 is connected to the other PEs 30 and to the rest of switch 12 through connection fabric 32. In the embodiment shown in FIG. 5, two virtual routers 34 are mapped on blade 28. It should be noted that, in one embodiment, more than one virtual router can be mapped to a single PE 30, and vice versa. Blade 28 can, therefore, be a shared resource among two or more subscribers.
  • The segmenting of switch 12 across a number of different subscribers is shown in FIG. 6.
  • In one embodiment, each VR is divided into a discrete object group, which has many functions and services associated with it; for instance routing, packet filtering and firewall each are individual objects. By being able to create a new object such as Network Address Translation (NA T), it is simply added as another part of the object group and activated. This action can be achieved without making any changes to the physical configuration of the Service Blade supporting the VR and thus maintaining network uptime.
  • The configuration of Virtual Routers (VR) and their corresponding Virtual Interfaces (VI) provides the desired constraints (or paths) for packet flows and the permissible transformations (AKA services) of the packet flows. NOS 20 still, however, has to provide mechanisms to efficiently direct packets from ingress port through protocol stack to Application service thread. The OS also has to provide mechanisms to efficiently direct packets from Application service thread through protocol stack to egress port.
  • In one embodiment, the configured VR/VI system defines a semi-static topology within the device boundary (which hereafter is referred to as the Configured Topology). Based on traffic patterns, the configured topology could induce a dynamic topology comprising of shortcuts (which hereafter is referred to as the Flow Topology).
  • In one embodiment, flows strictly follow the configured paths. This results in inefficient utilization of inter-connect bandwidth, memory and CPU time. In another embodiment, NOS 20 supports a dynamic flow based topology as discussed below.
  • The nominal Protocol Stack configuration places topological constraints on packet flows. First, the standard protocol profile and related topology will be described. Then, the issues that arise when the protocol stack is distributed are described.
  • The following terms are used throughout:
  • “Packet Flow”—All packets with a common set of attributes comprises a packet flow. Depending on the attributes, the flow may be L3 or L4 flow.
  • “L3 Flow”—Only Layer 3 attributes are used to identify a packet flow. The Layer 3 attributes used are <Destination IP Address, Source IP Address, IP Protocol>.
  • “L4 Flow”—When possible, both Layer 3 and Layer 4 attributes are used to identify a packet flow. Typically, multiple L4 flows comprise a single L3 flow. If the IP Protocol is TCP or UDP the Layer 4 attributes used are <Destination Port, Source Port>.
  • “Routing Table”—A common table of routing information that is used by Routing Protocols (e.g. BGP, OSPF, ISIS, RIP). The entries are usually tagged with origin, routing protocol attributes etc. This is also known as RIB (Routing Information Base).
  • “Forwarding Table”—A table of best next-hop for prefixes, consulted in the packet forwarding function and derived from the Routing Table. This is also known as FIB (Forwarding Information Base).
  • “Configured Topology”—Given a Subscriber VR and its ISP VR, consider the associated graph. This graph's nodes are the PE's executing software/services and the edges of the graph are the communication links between the software/services. This graph is the configured topology.
  • “Flow Topology”—Based on the actual dynamic flow of L3 and L4 packets a graph of software/services and the communication links between the software/services can be constructed. This graph is the flow topology. The flow topology is derived from and would be a sub-graph of the configured topology if shortcuts are not employed. When shortcuts are employed, there is no direct graph theoretic correlation between the configured and flow topologies.
  • Topological Constraints imposed by Protocol Stack
  • The Network layer is the loci of all packets received, sent or forwarded. Conceptually, the network layer (i.e. IP itself) can be thought of as being 2 sub-layers, namely the Forwarding and Local sub-layers. The functionality encompassed by the 2 IP sub-layers is shown in FIG. 7. IP Interfaces are the link service access points (LSAP in OSI-speak).
  • Traditional networking wisdom recommends: For IP, a packet flow is identified by <Source, Destination, Protocol>. These will be referred to as L3 flows. These attributes of a packet are preserved across all packet fragments. Preserve the temporal order of L3 flows received on an IP Interface. This reduces the resequencing delay of stream based protocols (such as TCP). Many datagram based applications are intolerant of packet re-ordering (which is not unreasonable if the application is transported via a UDP tunnel without order preservation guarantees).
  • The IP Packet ID, which is critical for packet fragmentation and reassembly, should be unique within a L3 flow originating from local applications. (This is actually required by RFC-791, Section 2.3, page 8).
  • Traditional implementations generally impose stronger restrictions than required, by:
  • Ensuring strict temporal order across all L3 flows received on an IP Interface.
  • Ensuring unique IP Packet ID across all L3 flows originating from local applications. Packet forwarding needs to consult the Forwarding Table or Forwarding Information Base (FIB). Most implementations maintain a single forwarding table. High performance implementations typically maintain multiple synchronized instances of the forwarding table.
  • An example of what would happen in the context of IPNOS 1.x is now described for typical application flows. The inter-module transfers are shown in FIG. 8.
  • The processing sequence is:
  • 1. Packet is received from the subscriber line interface
  • 2. Processed by IP Fwd module and passed to IP Local module
  • 3. Demux'ed by IP Local and passed on to the Application
  • 4. Application process data and sends transformed data
  • 5. IP Local sends packet to subscriber
  • 6. IP Fwd module Subscriber IP Fwd forwards it to ISP IP Fwd module
  • 7. ISP IP Fwd module sends it to ISP line interface
  • Note that steps 2, 3, 4, 5, 6 require an inter-PE transfer. Each of these steps may represent a backplane crossing.
  • FIG. 9 shows the contents that can be used to determine a L4 packet flow when the packet is unfragmented (determined by the condition (MF==0 && Offset==0)). It also shows the contents that can be used to determine a L3 packet flow when the packet is fragmented.
  • When a packet gets fragmented, it should be noted that the ID field is preserved across all fragments of the packet. However, the receiver may receive the fragments in arbitrary order. Thus the receiver may only use <Source, Destination, Protocol> to determine the packet flow. The receiver can not create per packet flow state which uses the ID field to decide on the L4 flow for all fragments on the false assumption that the first fragment contains L4 information.
  • Fragmented packets are reassembled before the L4 flow can be inferred. This has implications for L4 oriented services like NAT. For NAT to work correctly, the gateway must reassemble every fragmented packet before it can perform its packet transformation. This is a tremendous burden and many NAT implementations (including IPSX) simply do not transform the fragments subsequent to the first.
  • There are several specific flows that are optimized in accordance with embodiments of the present invention. The forward flows are shown as originating at a Subscriber interface and ending at an ISP interface in the upper half of FIGS. 10-13. The reverse flow is shown in the lower half of each figure.
  • In one embodiment of NOS 20, objects communicate with each other in 1 of 2 ways—namely Object IOCTLs and Object Channels. The Object Channel is point-to-point (P-P), light weight inter-object communication transport. This maps well into the Configured Topology.
  • When shortcuts are created, an Object Channel termination will receive traffic from multiple Object Channel sources. Consequently, according to one embodiment, a multi-point-to-point (MP-P) Object Channel is used in the Flow Topology.
  • The essential idea behind the MP-P Object Channel is that MP-P can be constructed in parallel to the P-P Object Channel. This permits the co-existence of the 2 communication models. This is shown in FIG. 14.
  • Both ends of a P-P use the initialization function obj_init_channel( ). For MP-P, there will be 2 separate initialization functions. For MP-P transmit, the initialization function is obj_mpp_tx_init_channel( ). For MP-P receive, the initialization function is obj_mpp_rx_init_channel( ). There is also an anonymous mpp_send( ) function that can be used (and which is bound to the channel end point by obj_mpp_tx_init_channel( ) to send anonymously to a channel end point without using the Object Channel abstraction.
  • In FIG. 14, Object Channel End Point (CEP) of both P-P and MP-P are shown. CEP 1 is initialized as both an MP-P receiver and as a P-P receiver/sender. When CEP 1 was initialized as an MP-P receiver, it got assigned a globally unique address. CEP 2 is initialized solely as a P-P receiver/sender. CEP 10 and 11 are initialized as MP-P sender with target address of CEP 1's MP-P address. Note that a MP-P sender can not be initialized as a P-P receiver/sender. Additionally, modules that have CEP 1's MP-P address cans send anonymously.
  • Another approach is to use a replicated FIB. The IP Forwarding agent uses the Forwarding Information Base (FIB) to make its forwarding decision. When the Virtual Router (VR) terminates links on multiple blades, the VR has to have multiple IP Forwarding agents. This requires the IP Forwarding agents to maintain a Replicated FIB. This feature has been referred to variously as Multi-FIB, Distributed FIB and Split FIB . . . none of which reflects the actual operation.
  • The Replicated FIB need not be constrained to only IP Forwarding agents within a VR. A Replicated FIB may be used by other objects of a VR to make forwarding decisions to support shortcuts.
  • It should be noted that there are a host other data structures that also may be replicated. These are Packet Filters (PF) (both dynamic and static), the Security Policy Database (SPD) and Security Association Database (SAD), and Network Address Translation (NA T) tables. Another approach is to use a Distributed Protocol Stack. FIG. 8 shows one possible functional decomposition of NOS 20 functionally distributed protocol stack. The functional decomposition simply cuts the protocol stack at convenient horizontal planes with no duplication of function.
  • According to one embodiment, to support a Flow Topology, a different functional decomposition of the protocol stack is proposed. This will duplicate functionality in multiple objects. Table 1 contrasts the assignment of functionality to objects under the two models of Distributed Protocol Stack. It is a logical extension of the VR flow cache that is employed to speed up packet forwarding.
  • TABLE 1
    Functional Decomposition of Distributed Protocol Stacks
    IPNOS 1.1 Distributed Proposed Distributed
    Protocol Stack Protocol Stack
    Objects in VR (Configured Topology) (Flow Topology)
    IP Forwarding IP input, IP output, IP IP input, IP output, IP
    Forwarding, IP Reassembly Forwarding, IP Reassembly
    (ESP and AH only), IP (ESP and AH only), IP
    Demux (ESP and AH only) Demux (ESP and AH only)
    IP Local IP Reassembly, IP receive IP input, IP output, IP
    and send, IP Demux, TCP, Reassembly, IP receive
    UDP, GRE, Socket Lower, and send, IP Demux, TCP,
    Routing protocols UDP, GRE, Socket Lower,
    Routing protocols
    Crypto Crypto services IP input, IP output, IP
    Forwarding, IP Reassembly
    (ESP and AH only), IP
    Demux (ESP and AH only),
    Crypto services
    Socket Upper Socket Upper IP input, IP output, IP
    Reassembly, IP receive
    and send, IP Demux, TCP,
    UDP, GRE, Socket Lower,
    Socket Upper
    Application Application Application
  • In the Flow based model, there are multiple objects that implement the IP functions. This requires that the FIB be replicated not only at the IP Forwarding object, but also in a host of other objects that implement the IP Forwarding layer functionality.
  • In one embodiment, Object Manager 24 consists of three layers as shown on FIG. 4. The upper layer titled OM Controller and Database (OMCD) 40 is concerned with managing the VPN and VR configuration. This is the agent that deals with the configuration manager directly. Middle layer 42 entitled OM Object Routing and Interface Global is concerned with managing global (across the switch system) object groups and object configurations. Lower layer 44 entitled OM Object Routing and Interface (OMORI) is concerned with managing local objects and groups as well as routing control information between address spaces based on the location of objects, and interfacing with the object via method invocation.
  • In one embodiment, the IPSX object database consists of two types of databases: Global (managed on Master Control Blade by OMORIG) and distributed local databases (managed by OMORI agents on every PE present in the system). In one such embodiment, the global database is a superset of the extracts from local databases.
  • Objects represent a basic unit of management for purposes of fault tolerance, computational load balancing, etc. One or more adjacent protocol modules can be placed into a single object. It is also possible that a module is split across two objects.
  • In one embodiment, a configuration management system connected to OMCD 40 is used to configure the VPNs and VRs as shown in Appendix A and is described in U.S. patent application Ser. No. 09/663,485, filed Sep. 13, 2000, now U.S. Pat. No. 7,272,643, which is incorporated herein by reference in its entirety for all purposes.
  • In one embodiment, instead of deploying CPE firewalls remotely at the enterprise subscriber site, System 10 provides Network Associates, Incorporated's (NAI's) Gauntlet Application Proxy Firewalls from the SP POP where they can be centrally managed and supported. NOS 20 is the foundation that enables third-party applications like Gauntlet to be delivered on switch 12.
  • The application proxy firewall model offers far superior security control because it provides full application-level awareness of attempted connections by examining everything at the highest layer of the protocol stack.
  • Once NAI's Gauntlet Application Proxy Firewall is configured, it offers the most robust form of access control on the market. Gauntlet lets access control policies to be established at Layer 7 and thus enables specific application-based rules to be made. For instance, users coming into the network from the Internet are allowed to do an FTP “get,” but not a “put.” Additionally, because the Gauntlet firewall is a proxy solution that acts as the intermediary, preventing the end-stations from communicating directly with the firewall. As a result, this solution offers significantly better protection against OS directed denial of service attacks. Another important aspect of the Application Proxy Firewall is the incremental services provided by switch 12 such as Intrusion Detection and Anti-virus scanning, which are not available in firewall application models such as stateful inspection.
  • FIG. 15 is a flow diagram illustrating a process of allocating network resources in accordance with an embodiment of the present invention. At block 1510, a virtual router (VR)-based switch configured for operation at an Internet point-of-presence (POP) of a service provider is provided.
  • At block 1520, a network operating system (NOS) is provided on each of the processing elements of the VR-based switch.
  • At block 1530, resources of the VR-based switch are segmented among multiple subscribers. In the present example, the resources are segmented between a first subscriber of the service provider and a second subscriber of the service provider.
  • At block 1540, a first set of VRs of the VR-based switch are associated with the first subscriber.
  • At block 1550, a second set of VRs of the VR-based switch are associated with the second subscriber. In one embodiment, a system VR is defined within the VR-based switch. In such an embodiment, the system VR may aggregate traffic from the first set of VRs and the second set of VRs and transfer the aggregated traffic across the Internet. At block 1560, the first set of VRs are mapped onto a first set of processing elements (PEs) of the VR-based switch.
  • At block 1560, the first set of VRs are mapped onto a first set of PEs of the VR-based switch. According to one embodiment, at least one of the first set of VRs spans two or more of the PEs of the VR-based switch.
  • At block 1570, the second set of VRs are mapped onto a second set of PEs of the VR-based switch. In one embodiment, a shared processing element is part of the first set of PEs and the second set of PEs. According to one embodiment, at least one of the second set of VRs spans two or more of the PEs of the VR-based switch.
  • At block 1580, a first set of customized services is configured to be provided by the VR-based switch on behalf of the first subscriber. According to one embodiment, a first service object group is allocated to the first set of VRs. The first service object group may include a service object corresponding to each service of the first set of customized services and the service objects may be dynamically distributed by the NOS to customized processors of the first set of PEs to achieve desired computational support. In one embodiment, the first set of customized services includes various combinations of firewalling, virtual private networking, encryption, traffic shaping, routing and network address translation (NAT).
  • At block 1590, a second set of customized services is configured to be provided by the VR-based switch on behalf of the second subscriber. According to one embodiment, a second service object group is allocated to the second set of VRs. The second service object group may include a service object corresponding to each service of the second set of customized services and the service objects may be dynamically distributed by the NOS to customized processors of the second set of PEs to achieve desired computational support. In one embodiment, the second set of customized services includes various combinations of firewalling, virtual private networking, encryption, traffic shaping, routing and network address translation (NAT).
  • In one embodiment, a first configured topology is defined among the first set of VRs by configuring virtual interfaces (VIs) of the first set of VRs to provide desired paths for packet flows associated with the first subscriber and permissible transformations of the packet flows associated with the first subscriber.
  • In one embodiment, a second configured topology is defined among the second set of VRs by configuring virtual interfaces (VIs) of the second set of VRs to provide desired paths for packet flows associated with the second subscriber and permissible transformations of the packet flows associated with the second subscriber.
  • FIG. 16 conceptually illustrates the performance of multiple flow cache lookups for complex flows in accordance with an embodiment of the present invention. Complex flows, including, but not limited to, strict L3 flows, tunneled flows and encrypted flows add another level of complexity to flow processing. During flow processing, a packet's L3 and L4 attributes transform from one type to the other. In order to keep flow processing within the scope of flow cache operations and thereby keep the flow processing on the fast path, in one embodiment, the IP flow cache architecture applies packet classifications multiple times as the L3 and L4 attributes change. This results in multiple cache lookups for the same ingress flow and enables a VR to finish processing of packets through cache operations only, whereas traditional routers would normally switch to the slow path (i.e., exception processing) to process more complex packet flows.
  • As an example, consider ingress flow 1610, an L3 ingress flow consisting of host addressed, encrypted, tunneled and fragmented packets (i.e., P1, P2 and P3). According to the present example, processing of ingress flow 1610 involves three lookups into flow cache 1600. The first cache lookup 1611 results in a cache flow hit that identifies a cache flow entry 1601 directing the VR to reassemble the fragmented packets. The second cache lookup results in a cache flow hit 1612 that identifies a cache flow entry 1602 directing the VR to decrypt the IPSec tunneled packet. The third cache lookup results in a cache flow hit 1613 that identifies a cache flow entry 1603 directing the VR to forward the inner IP packet. As such according to the present example, each packet associated with a complex flow, such as ingress flow 1610, is processed through operations defined only by the flow cache 1600 thereby avoiding slow path processing.
  • CONCLUSION
  • In one embodiment, the service provider's security staff consults with the customer in order to understand the corporate network infrastructure and to develop appropriate security policies (Note: this is a similar process to the CPE model). Once this has been accomplished, the NOC security staff remotely accesses the IP Service Processing Switch (using the Service Management System) at the regional POP serving the enterprise customer, and the firewall service is provisioned and configured remotely. Such a model enables the service provider to leverage the enterprise's existing services infrastructure (leased lines and Frame Relay PVCs) to deliver new, value-added services without the requirement of a truck roll. All firewall and VPN functionality resides on the IP Service Processing Switch at the POP, thus freeing the service provider from onsite systems integration and configuration and effectively hiding the technology from the enterprise customer. Firewall inspection and access control functions, as well as VPN tunneling and encryption, take place at the IP Service Processing Switch and across the WAN, while the enterprise's secure leased line or Frame Relay PVC access link remains in place. The customer interface is between its router and the IP Service Processing Switch (acting as an access router), just as it was prior to the rollout of the managed firewall service. Additionally, the customer has visibility into and control over its segment of the network via the CNM that typically resides at the headquarters site.
  • The network-based firewall model also enables service providers to quickly and cost-effectively roll out managed firewall solutions at all enterprise customer sites. As a result, secure Internet access can be provided to every site, eliminating the performance and complexity issues associated with backhauling Internet traffic across the WAN to and from a centralized secure access point. As the IP Service Delivery Platform is designed to enable value-added public network services, it is a carrier-grade system that is more robust and higher-capacity than traditional access routers, and an order of magnitude more scaleable and manageable than CPE-based systems. The platform's Service Management System enables managed firewall services, as well as a host of other managed network services, to be provisioned, configured, and managed with point-and-click simplicity, minimizing the need for expensive, highly skilled security professionals and significantly cutting service rollout lead-times. The Service Management System is capable of supporting a fleet of IP Service Processing Switches and tens of thousands of enterprise networks, and interfaces to the platform at the POP from the NOC via IP address. Support for incremental additional platforms and customers is added via modular software add-ons. Services can be provisioned via the SMS system's simple point and click menus, as well as requested directly by the customer via the CNM system. Deployment of a robust IP Service Delivery Platform in the carrier network enables service providers to rapidly turn-up high value, managed network-based services at a fraction of the capital and operational costs of CPE-based solutions. This enables service providers to gain a least-cost service delivery and support structure. Additionally, it enables them to gain higher margins and more market share than competitors utilizing traditional service delivery mechanisms—even while offering managed firewall services at a lower customer price point.
  • As enterprise customers gain confidence in the WAN providers' ability to deliver managed firewall services, a more scaleable and cost-effective service delivery model must be employed. Moving the intelligence of the service off of the customer premises and into the WAN is an effective strategy to accomplish this. Managed, network-based firewall services provide the same feature/functionality of a CPE-based service while greatly reducing capital and operational costs, as well as complexity.
  • The managed, network-based firewall service model enables WAN service providers to minimize service creation and delivery costs. This model virtually eliminates the need for onsite installation, configuration, and troubleshooting truck rolls, drastically reducing operational costs. This lower cost structure creates opportunities to increase revenues and/or gain market share by value-pricing the service. Services can be rapidly provisioned via a centralized services management system, shortening delivery cycles and enabling service providers to begin billing immediately. Additional services can be rapidly crafted and deployed via the same efficient delivery mechanism.
  • The network-based service model is a rapid and cost-effective way for service providers to deploy high-value managed firewall solutions. This model requires a comprehensive service delivery platform consisting of robust network hardware, an intelligent and scaleable services management system, and a feature-rich Customer Network Management (CNM) tool to mitigate customers' fears of losing control of network security.
  • In the above discussion and in the attached appendices, the term “computer” is defined to include any digital or analog data processing unit. Examples include any personal computer, workstation, set top box, mainframe, server, supercomputer, laptop or personal digital assistant capable of embodying the inventions described herein.
  • Examples of articles comprising computer readable media are floppy disks, hard drives, CD-ROM or DVD media or any other read-write or read-only memory device.
  • Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiment shown. This application is intended to cover any adaptations or variations of the present invention. Therefore, it is intended that this invention be limited only by the claims and the equivalents thereof.

Claims (20)

1. A method comprising:
receiving, by a virtual router (VR) of a VR-based switch, a packet associated with a complex flow;
causing, by the VR an Internet Protocol (IP) flow cache architecture of the VR-based switch to perform a first flow-based packet classification based on a first set of attributes of the packet;
identifying a first flow processing operation by performing a first flow cache lookup based on the first flow-based packet classification;
performing the first flow processing operation on the packet;
after performing the first flow processing operation on the packet, causing the IP flow cache architecture to perform a second flow-based packet classification of the packet based on a second set of attributes of the packet;
identifying a second flow processing operation by performing a second flow cache lookup based on the second flow-based packet classification;
performing the second flow processing operation on the packet;
sending the packet to an egress interface of the VR-based switch.
2. The method of claim 1, further comprising:
after performing the second flow processing operation on the packet and before sending the packet to the egress interface, causing the IP flow cache architecture to perform a third flow-based packet classification of the packet based on a third set of attributes of the packet;
identifying a third flow processing operation by performing a third flow cache lookup based on the second flow-based packet classification; and
performing the third flow processing operation on the packet.
3. The method of claim 1, wherein the complex flow is a strict layer 3 flow.
4. The method of claim 1, wherein the complex flow is a tunneled flow.
5. The method of claim 1, wherein the complex flow is an encrypted flow.
6. The method of claim 2, wherein the first flow processing operation comprises reassembling a plurality of IP fragments, the second flow processing operation comprises decrypting the packet and the third flow processing operation comprises looking up forwarding information for the packet.
7. The method of claim 2, wherein the first set of attributes comprise layer 3 attributes.
8. The method of claim 2, wherein the second set of attributes comprise layer 4 attributes.
9. A method comprising:
receiving, by an ingress interface of a switching device, a plurality of packets associated with a complex ingress flow;
performing fast path processing of the plurality of packets by the switching device by causing each of the plurality of packets to be classified multiple times, performing multiple flow cache lookups for each of the plurality of packets and applying packet transformations identified by the multiple flow cache lookups to the plurality of packets; and
transmitting, by an egress interface of the switching device, the plurality of packets.
10. The method of claim 9, wherein the complex ingress flow is a strict layer 3 flow.
11. The method of claim 9, wherein the complex ingress flow is a tunneled flow.
12. The method of claim 9, wherein the complex ingress flow is an encrypted flow.
13. The method of claim 10, wherein said applying packet transformations identified by the multiple flow cache lookups comprises one or more of reassembling a plurality of Internet Protocol fragments, decrypting the plurality of packets and the forwarding the plurality of packets.
14. The method of claim 10, wherein said performing multiple flow cache lookups for each of the plurality of packets comprises extracting a first set of attributes from the packet for a first lookup of the multiple flow cache lookups and extracting a second set of attributes from the packet for a second lookup of the multiple flow cache lookups.
15. The method of claim 14, wherein the first set of attributes comprise layer 4 attributes and the second set of attributes comprise layer 3 attributes.
16. A computer-readable storage medium readable by one or more processing elements of a plurality of processing elements of a virtual router (VR)-based switch, the computer-readable storage medium tangibly embodying a set of instructions executable by one or more processors of the plurality of processing elements to perform method for performing fast path processing of complex flows, the method comprising:
receiving a packet associated with a complex flow;
performing a first flow-based packet classification based on a first set of attributes of the packet;
identifying a first flow processing operation by performing a first flow cache lookup based on the first flow-based packet classification;
performing the first flow processing operation on the packet;
after performing the first flow processing operation on the packet, performing a second flow-based packet classification of the packet based on a second set of attributes of the packet;
identifying a second flow processing operation by performing a second flow cache lookup based on the second flow-based packet classification;
performing the second flow processing operation on the packet;
sending the packet to an egress interface of the VR-based switch.
17. The computer-readable storage medium of claim 16, wherein the method further comprises:
after performing the second flow processing operation on the packet and before sending the packet to the egress interface, performing a third flow-based packet classification of the packet based on a third set of attributes of the packet;
identifying a third flow processing operation by performing a third flow cache lookup based on the second flow-based packet classification; and
performing the third flow processing operation on the packet.
18. The computer-readable storage medium of claim 16, wherein the complex flow is a strict layer 3 flow, a tunneled flow or an encrypted flow.
19. The computer-readable storage medium of claim 16, wherein the first set of attributes comprise layer 3 attributes and the second set of attributes comprises layer 4 attributes.
20. The computer-readable storage medium of claim 17, wherein the first flow processing operation comprises reassembling a plurality of Internet Protocol (IP) fragments, the second flow processing operation comprises decrypting the packet and the third flow processing operation comprises looking up forwarding information for the packet.
US12/906,999 2000-09-13 2010-10-18 Fast path complex flow processing Abandoned US20110032942A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/906,999 US20110032942A1 (en) 2000-09-13 2010-10-18 Fast path complex flow processing

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/661,130 US7389358B1 (en) 2000-09-13 2000-09-13 Distributed virtual system to support managed, network-based services
US12/140,249 US7818452B2 (en) 2000-09-13 2008-06-16 Distributed virtual system to support managed, network-based services
US12/906,999 US20110032942A1 (en) 2000-09-13 2010-10-18 Fast path complex flow processing

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/140,249 Continuation US7818452B2 (en) 2000-09-13 2008-06-16 Distributed virtual system to support managed, network-based services

Publications (1)

Publication Number Publication Date
US20110032942A1 true US20110032942A1 (en) 2011-02-10

Family

ID=39510512

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/661,130 Expired - Lifetime US7389358B1 (en) 2000-09-13 2000-09-13 Distributed virtual system to support managed, network-based services
US12/140,249 Expired - Fee Related US7818452B2 (en) 2000-09-13 2008-06-16 Distributed virtual system to support managed, network-based services
US12/906,999 Abandoned US20110032942A1 (en) 2000-09-13 2010-10-18 Fast path complex flow processing

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US09/661,130 Expired - Lifetime US7389358B1 (en) 2000-09-13 2000-09-13 Distributed virtual system to support managed, network-based services
US12/140,249 Expired - Fee Related US7818452B2 (en) 2000-09-13 2008-06-16 Distributed virtual system to support managed, network-based services

Country Status (1)

Country Link
US (3) US7389358B1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064704A1 (en) * 2002-06-04 2007-03-22 Fortinet, Inc. Methods and systems for a distributed provider edge
US20080219254A1 (en) * 2000-07-10 2008-09-11 Alterwan, Inc. Wide area network using internet with high quality of service
US20100142527A1 (en) * 2004-09-24 2010-06-10 Fortinet, Inc. Scalable IP-Services Enabled Multicast Forwarding with Efficient Resource Utilization
US20100189016A1 (en) * 2001-06-28 2010-07-29 Fortinet, Inc. Identifying nodes in a ring network
US20110142047A1 (en) * 2009-12-10 2011-06-16 Electronics and Telecommunications Rearch Institute Backbone edge switching apparatus and packet processing method of the backbone edge switching apparatus
US20130223221A1 (en) * 2012-02-27 2013-08-29 Verizon Patent And Licensing Inc. Traffic Policing For MPLS-Based Network
US20150200860A1 (en) * 2014-01-14 2015-07-16 Marvell International Ltd. Method and apparatus for packet classification
US9185073B2 (en) 2011-10-06 2015-11-10 Qualcomm Incorporated Systems and methods for data packet processing
US20170201810A1 (en) * 2016-01-07 2017-07-13 Cisco Technology, Inc. Network Telemetry with Byte Distribution and Cryptographic Protocol Data Elements
US10594734B1 (en) * 2017-04-21 2020-03-17 Palo Alto Networks, Inc. Dynamic per subscriber policy enablement for security platforms within service provider network environments
US10601776B1 (en) * 2017-04-21 2020-03-24 Palo Alto Networks, Inc. Security platform for service provider network environments
US11665087B2 (en) 2021-09-15 2023-05-30 International Business Machines Corporation Transparent service-aware multi-path networking with a feature of multiplexing

Families Citing this family (252)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651087B1 (en) * 1999-01-28 2003-11-18 Bellsouth Intellectual Property Corporation Method and system for publishing an electronic file attached to an electronic mail message
US7272643B1 (en) * 2000-09-13 2007-09-18 Fortinet, Inc. System and method for managing and provisioning virtual routers
US7111072B1 (en) * 2000-09-13 2006-09-19 Cosine Communications, Inc. Packet routing system and method
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US7389358B1 (en) * 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US7487232B1 (en) * 2000-09-13 2009-02-03 Fortinet, Inc. Switch management system and method
US7441017B2 (en) * 2001-06-29 2008-10-21 Thomas Lee Watson System and method for router virtual networking
USRE43383E1 (en) * 2001-12-12 2012-05-15 Samsung Electronics Co., Ltd. Method for sharing hybrid resources in a wireless independent network, a station for the method, and a data format for the method and the station
KR100450795B1 (en) * 2001-12-12 2004-10-01 삼성전자주식회사 Method for sharing source in hybrid in wireless independent network, station for the method, and data format for the method and the station
US7161904B2 (en) * 2002-06-04 2007-01-09 Fortinet, Inc. System and method for hierarchical metering in a virtual router based network switch
US7177311B1 (en) * 2002-06-04 2007-02-13 Fortinet, Inc. System and method for routing traffic through a virtual router-based network switch
US7376125B1 (en) * 2002-06-04 2008-05-20 Fortinet, Inc. Service processing switch
US7203192B2 (en) * 2002-06-04 2007-04-10 Fortinet, Inc. Network packet steering
US7162740B2 (en) * 2002-07-22 2007-01-09 General Instrument Corporation Denial of service defense by proxy
US7096383B2 (en) 2002-08-29 2006-08-22 Cosine Communications, Inc. System and method for virtual router failover in a network routing system
FR2846169B1 (en) * 2002-10-22 2005-02-04 At & T Corp PRIVATE VIRTUAL NETWORK BASED ON THE LABEL PERMUTATION PROCEDURE (MPLS) ADAPTED TO MEASURE TRAFFIC EXCHANGE BETWEEN SINGLE TARIFF ZONES
US7266120B2 (en) * 2002-11-18 2007-09-04 Fortinet, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
US20070223500A1 (en) * 2003-05-30 2007-09-27 Lg Electronics Inc. Home Network System
US7729282B2 (en) * 2003-05-30 2010-06-01 Lg Electronics Inc. Home network system and its configuration system
KR100596755B1 (en) * 2003-05-30 2006-07-04 엘지전자 주식회사 Home network system
KR100605216B1 (en) * 2003-05-30 2006-07-31 엘지전자 주식회사 0network device
US20070061406A1 (en) * 2003-05-30 2007-03-15 Seung-Myun Baek Home network system
KR100605218B1 (en) * 2003-05-30 2006-07-31 엘지전자 주식회사 Network adaptor
KR100638017B1 (en) * 2003-05-30 2006-10-23 엘지전자 주식회사 Network device
US7715325B2 (en) * 2003-05-30 2010-05-11 Lg Electronics Inc Home network system
US7808904B2 (en) 2004-11-18 2010-10-05 Fortinet, Inc. Method and apparatus for managing subscriber profiles
US20070115979A1 (en) * 2004-11-18 2007-05-24 Fortinet, Inc. Method and apparatus for managing subscriber profiles
US7620981B2 (en) 2005-05-26 2009-11-17 Charles William Frank Virtual devices and virtual bus tunnels, modules and methods
US8819092B2 (en) 2005-08-16 2014-08-26 Rateze Remote Mgmt. L.L.C. Disaggregated resources and access methods
US8619771B2 (en) 2009-09-30 2013-12-31 Vmware, Inc. Private allocated networks over shared communications infrastructure
US8924524B2 (en) 2009-07-27 2014-12-30 Vmware, Inc. Automated network configuration of virtual machines in a virtual lab data environment
US8892706B1 (en) 2010-06-21 2014-11-18 Vmware, Inc. Private ethernet overlay networks over a shared ethernet in a virtual environment
US20090005747A1 (en) 2007-03-23 2009-01-01 Michaels Thomas L Fluid collection and disposal system having interchangeable collection and other features and methods relating thereto
US9889239B2 (en) 2007-03-23 2018-02-13 Allegiance Corporation Fluid collection and disposal system and related methods
US8460256B2 (en) 2009-07-15 2013-06-11 Allegiance Corporation Collapsible fluid collection and disposal system and related methods
US8006297B2 (en) * 2007-04-25 2011-08-23 Oracle America, Inc. Method and system for combined security protocol and packet filter offload and onload
EP2587736A3 (en) 2007-09-26 2013-08-28 Nicira, Inc. Network operating system for managing and securing networks
US20090097492A1 (en) * 2007-10-12 2009-04-16 Telefonaktiebolaget Lm Ericsson (Publ) Support of triple play services in user devices
US8862706B2 (en) * 2007-12-14 2014-10-14 Nant Holdings Ip, Llc Hybrid transport—application network fabric apparatus
WO2009080096A1 (en) * 2007-12-19 2009-07-02 Telefonaktiebolaget Lm Ericsson (Publ) Publish/subscribe networks
US8195774B2 (en) 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8549281B2 (en) * 2008-10-21 2013-10-01 Cohesive Flexible Technologies Corporation System and methods for enabling customer network control in third-party computing environments
US7607174B1 (en) * 2008-12-31 2009-10-20 Kaspersky Lab Zao Adaptive security for portable information devices
US9137209B1 (en) * 2008-12-10 2015-09-15 Amazon Technologies, Inc. Providing local secure network access to remote services
US8331362B2 (en) 2008-12-30 2012-12-11 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8190769B1 (en) 2008-12-30 2012-05-29 Juniper Networks, Inc. Methods and apparatus for provisioning at a network device in response to a virtual resource migration notification
US8054832B1 (en) 2008-12-30 2011-11-08 Juniper Networks, Inc. Methods and apparatus for routing between virtual resources based on a routing location policy
US8565118B2 (en) 2008-12-30 2013-10-22 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8255496B2 (en) 2008-12-30 2012-08-28 Juniper Networks, Inc. Method and apparatus for determining a network topology during network provisioning
US8130641B2 (en) * 2009-03-13 2012-03-06 Hewlett-Packard Development Company, L.P. Methods and systems for managing network traffic within a virtual network system
EP2415221B1 (en) 2009-04-01 2014-05-07 Nicira, Inc. Method and apparatus for implementing and managing virtual switches
US8953603B2 (en) 2009-10-28 2015-02-10 Juniper Networks, Inc. Methods and apparatus related to a distributed switch fabric
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch
CN102088703B (en) * 2009-12-03 2014-02-19 华为技术有限公司 Method, device and system for distributing resources
US9425986B2 (en) * 2010-03-03 2016-08-23 Iwebgate Technology Limited System and method for multiple concurrent virtual networks
US8615014B2 (en) * 2010-03-03 2013-12-24 Iwebgate Technology Limited System and method for multiple concurrent virtual networks
US9552478B2 (en) 2010-05-18 2017-01-24 AO Kaspersky Lab Team security for portable information devices
EP3002888B1 (en) 2010-06-23 2017-06-14 Telefonaktiebolaget LM Ericsson (publ) Reference signal interference management in heterogeneous network deployments
US10103939B2 (en) 2010-07-06 2018-10-16 Nicira, Inc. Network control apparatus and method for populating logical datapath sets
US8958292B2 (en) 2010-07-06 2015-02-17 Nicira, Inc. Network control apparatus and method with port security controls
US9525647B2 (en) 2010-07-06 2016-12-20 Nicira, Inc. Network control apparatus and method for creating and modifying logical switching elements
US8964528B2 (en) 2010-07-06 2015-02-24 Nicira, Inc. Method and apparatus for robust packet distribution among hierarchical managed switching elements
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US8891406B1 (en) 2010-12-22 2014-11-18 Juniper Networks, Inc. Methods and apparatus for tunnel management within a data center
US9043452B2 (en) 2011-05-04 2015-05-26 Nicira, Inc. Network control apparatus and method for port isolation
US9209998B2 (en) 2011-08-17 2015-12-08 Nicira, Inc. Packet processing in managed interconnection switching elements
CN107071087B (en) 2011-08-17 2021-01-26 Nicira股份有限公司 Logical L3 routing
US9203701B2 (en) 2011-10-25 2015-12-01 Nicira, Inc. Network virtualization apparatus and method with scheduling capabilities
US9288104B2 (en) 2011-10-25 2016-03-15 Nicira, Inc. Chassis controllers for converting universal flows
US9154433B2 (en) 2011-10-25 2015-10-06 Nicira, Inc. Physical controller
US9137107B2 (en) 2011-10-25 2015-09-15 Nicira, Inc. Physical controllers for converting universal flows
WO2013074828A1 (en) 2011-11-15 2013-05-23 Nicira, Inc. Firewalls in logical networks
AU2013249154B2 (en) 2012-04-18 2015-12-10 Nicira, Inc. Exchange of network state information between forwarding elements
US8775599B2 (en) * 2012-06-19 2014-07-08 Microsoft Corporation Multi-tenant middleware cloud service technology
US9231892B2 (en) 2012-07-09 2016-01-05 Vmware, Inc. Distributed virtual switch configuration and state management
US9288162B2 (en) 2012-08-03 2016-03-15 Cisco Technology, Inc. Adaptive infrastructure for distributed virtual switch
US9930066B2 (en) 2013-02-12 2018-03-27 Nicira, Inc. Infrastructure level LAN security
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US9432215B2 (en) 2013-05-21 2016-08-30 Nicira, Inc. Hierarchical network managers
US9686192B2 (en) 2013-06-28 2017-06-20 Niciria, Inc. Network service slotting
US9571386B2 (en) 2013-07-08 2017-02-14 Nicira, Inc. Hybrid packet processing
US10218564B2 (en) 2013-07-08 2019-02-26 Nicira, Inc. Unified replication mechanism for fault-tolerance of state
US9667447B2 (en) 2013-07-08 2017-05-30 Nicira, Inc. Managing context identifier assignment across multiple physical domains
US9344349B2 (en) 2013-07-12 2016-05-17 Nicira, Inc. Tracing network packets by a cluster of network controllers
US9407580B2 (en) 2013-07-12 2016-08-02 Nicira, Inc. Maintaining data stored with a packet
US9282019B2 (en) 2013-07-12 2016-03-08 Nicira, Inc. Tracing logical network packets through physical network
US9952885B2 (en) 2013-08-14 2018-04-24 Nicira, Inc. Generation of configuration files for a DHCP module executing within a virtualized container
US9887960B2 (en) 2013-08-14 2018-02-06 Nicira, Inc. Providing services for logical networks
US9973382B2 (en) 2013-08-15 2018-05-15 Nicira, Inc. Hitless upgrade for network control applications
US20150055456A1 (en) 2013-08-26 2015-02-26 Vmware, Inc. Traffic and load aware dynamic queue management
US9531676B2 (en) 2013-08-26 2016-12-27 Nicira, Inc. Proxy methods for suppressing broadcast traffic in a network
US9503371B2 (en) 2013-09-04 2016-11-22 Nicira, Inc. High availability L3 gateways for logical networks
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9674087B2 (en) 2013-09-15 2017-06-06 Nicira, Inc. Performing a multi-stage lookup to classify packets
US9602398B2 (en) 2013-09-15 2017-03-21 Nicira, Inc. Dynamically generating flows with wildcard fields
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
US9596126B2 (en) 2013-10-10 2017-03-14 Nicira, Inc. Controller side method of generating and updating a controller assignment list
US10063458B2 (en) 2013-10-13 2018-08-28 Nicira, Inc. Asymmetric connection with external networks
US9575782B2 (en) 2013-10-13 2017-02-21 Nicira, Inc. ARP for logical router
US9998530B2 (en) 2013-10-15 2018-06-12 Nicira, Inc. Distributed global load-balancing system for software-defined data centers
US9967199B2 (en) 2013-12-09 2018-05-08 Nicira, Inc. Inspecting operations of a machine to detect elephant flows
US10193771B2 (en) 2013-12-09 2019-01-29 Nicira, Inc. Detecting and handling elephant flows
US9996467B2 (en) 2013-12-13 2018-06-12 Nicira, Inc. Dynamically adjusting the number of flows allowed in a flow table cache
US9569368B2 (en) 2013-12-13 2017-02-14 Nicira, Inc. Installing and managing flows in a flow table cache
US11349806B2 (en) 2013-12-19 2022-05-31 Vmware, Inc. Methods, apparatuses and systems for assigning IP addresses in a virtualized environment
WO2015116155A1 (en) * 2014-01-31 2015-08-06 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for managing workflows for communication network provisioning
US9215213B2 (en) 2014-02-20 2015-12-15 Nicira, Inc. Method and apparatus for distributing firewall rules
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US9225597B2 (en) 2014-03-14 2015-12-29 Nicira, Inc. Managed gateways peering with external router to attract ingress packets
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9313129B2 (en) 2014-03-14 2016-04-12 Nicira, Inc. Logical router processing by network controller
US20150271268A1 (en) * 2014-03-20 2015-09-24 Cox Communications, Inc. Virtual customer networks and decomposition and virtualization of network communication layer functionality
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US9503321B2 (en) 2014-03-21 2016-11-22 Nicira, Inc. Dynamic routing for logical routers
US9413644B2 (en) 2014-03-27 2016-08-09 Nicira, Inc. Ingress ECMP in virtual distributed routing environment
US9794186B2 (en) 2014-03-27 2017-10-17 Nicira, Inc. Distributed network address translation for efficient cloud service access
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
US9338091B2 (en) 2014-03-27 2016-05-10 Nicira, Inc. Procedures for efficient cloud service access in a system with multiple tenant logical networks
US9825854B2 (en) 2014-03-27 2017-11-21 Nicira, Inc. Host architecture for efficient cloud service access
US9582308B2 (en) 2014-03-31 2017-02-28 Nicira, Inc. Auto detecting legitimate IP addresses using spoofguard agents
US9906494B2 (en) 2014-03-31 2018-02-27 Nicira, Inc. Configuring interactions with a firewall service virtual machine
US9385954B2 (en) 2014-03-31 2016-07-05 Nicira, Inc. Hashing techniques for use in a network environment
US9215210B2 (en) 2014-03-31 2015-12-15 Nicira, Inc. Migrating firewall connection state for a firewall service virtual machine
US10193806B2 (en) 2014-03-31 2019-01-29 Nicira, Inc. Performing a finishing operation to improve the quality of a resulting hash
US9503427B2 (en) 2014-03-31 2016-11-22 Nicira, Inc. Method and apparatus for integrating a service virtual machine
US9985896B2 (en) 2014-03-31 2018-05-29 Nicira, Inc. Caching of service decisions
US10091120B2 (en) 2014-05-05 2018-10-02 Nicira, Inc. Secondary input queues for maintaining a consistent network state
US9825913B2 (en) 2014-06-04 2017-11-21 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9729512B2 (en) 2014-06-04 2017-08-08 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US11087006B2 (en) 2014-06-30 2021-08-10 Nicira, Inc. Method and apparatus for encrypting messages based on encryption group association
US9742881B2 (en) 2014-06-30 2017-08-22 Nicira, Inc. Network virtualization using just-in-time distributed capability for classification encoding
US9875127B2 (en) 2014-08-22 2018-01-23 Nicira, Inc. Enabling uniform switch management in virtual infrastructure
US9768980B2 (en) 2014-09-30 2017-09-19 Nicira, Inc. Virtual distributed bridging
US11178051B2 (en) 2014-09-30 2021-11-16 Vmware, Inc. Packet key parser for flow-based forwarding elements
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US10135737B2 (en) 2014-09-30 2018-11-20 Nicira, Inc. Distributed load balancing systems
US9935827B2 (en) 2014-09-30 2018-04-03 Nicira, Inc. Method and apparatus for distributing load among a plurality of service nodes
US10020960B2 (en) 2014-09-30 2018-07-10 Nicira, Inc. Virtual distributed bridging
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US11496606B2 (en) 2014-09-30 2022-11-08 Nicira, Inc. Sticky service sessions in a datacenter
US10469342B2 (en) 2014-10-10 2019-11-05 Nicira, Inc. Logical network traffic analysis
US10044617B2 (en) 2014-11-14 2018-08-07 Nicira, Inc. Stateful services on stateless clustered edge
US11533255B2 (en) 2014-11-14 2022-12-20 Nicira, Inc. Stateful services on stateless clustered edge
US9876714B2 (en) 2014-11-14 2018-01-23 Nicira, Inc. Stateful services on stateless clustered edge
US9866473B2 (en) 2014-11-14 2018-01-09 Nicira, Inc. Stateful services on stateless clustered edge
US9692727B2 (en) 2014-12-02 2017-06-27 Nicira, Inc. Context-aware distributed firewall
US10606626B2 (en) 2014-12-29 2020-03-31 Nicira, Inc. Introspection method and apparatus for network access filtering
US10079779B2 (en) 2015-01-30 2018-09-18 Nicira, Inc. Implementing logical router uplinks
US10594743B2 (en) 2015-04-03 2020-03-17 Nicira, Inc. Method, apparatus, and system for implementing a content switch
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US9967134B2 (en) 2015-04-06 2018-05-08 Nicira, Inc. Reduction of network churn based on differences in input state
US9755903B2 (en) 2015-06-30 2017-09-05 Nicira, Inc. Replicating firewall policy across multiple data centers
US10348625B2 (en) 2015-06-30 2019-07-09 Nicira, Inc. Sharing common L2 segment in a virtual distributed router environment
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
US10057157B2 (en) 2015-08-31 2018-08-21 Nicira, Inc. Automatically advertising NAT routes between logical routers
US10204122B2 (en) 2015-09-30 2019-02-12 Nicira, Inc. Implementing an interface between tuple and message-driven control entities
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
US10333849B2 (en) 2016-04-28 2019-06-25 Nicira, Inc. Automatic configuration of logical routers on edge nodes
US10841273B2 (en) 2016-04-29 2020-11-17 Nicira, Inc. Implementing logical DHCP servers in logical networks
US10484515B2 (en) 2016-04-29 2019-11-19 Nicira, Inc. Implementing logical metadata proxy servers in logical networks
US11019167B2 (en) 2016-04-29 2021-05-25 Nicira, Inc. Management of update queues for network controller
US10135727B2 (en) 2016-04-29 2018-11-20 Nicira, Inc. Address grouping for distributed service rules
US10348685B2 (en) 2016-04-29 2019-07-09 Nicira, Inc. Priority allocation for distributed service rules
US10091161B2 (en) 2016-04-30 2018-10-02 Nicira, Inc. Assignment of router ID for logical routers
US10944722B2 (en) 2016-05-01 2021-03-09 Nicira, Inc. Using activities to manage multi-tenant firewall configuration
US11171920B2 (en) 2016-05-01 2021-11-09 Nicira, Inc. Publication of firewall configuration
CN106060183B (en) * 2016-05-03 2019-05-07 新华三技术有限公司 A kind of address distribution method and device
US10560320B2 (en) 2016-06-29 2020-02-11 Nicira, Inc. Ranking of gateways in cluster
US11088990B2 (en) 2016-06-29 2021-08-10 Nicira, Inc. Translation cache for firewall configuration
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US11258761B2 (en) 2016-06-29 2022-02-22 Nicira, Inc. Self-service firewall configuration
US10798073B2 (en) 2016-08-26 2020-10-06 Nicira, Inc. Secure key management protocol for distributed network encryption
US10938837B2 (en) 2016-08-30 2021-03-02 Nicira, Inc. Isolated network stack to manage security for virtual machines
US9762619B1 (en) 2016-08-30 2017-09-12 Nicira, Inc. Multi-layer policy definition and enforcement framework for network virtualization
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10341255B2 (en) 2016-10-28 2019-07-02 Hewlett Packard Enterprise Development Lp Switch resource manager
US10193862B2 (en) 2016-11-29 2019-01-29 Vmware, Inc. Security policy analysis based on detecting new network port connections
US10609160B2 (en) 2016-12-06 2020-03-31 Nicira, Inc. Performing context-rich attribute-based services on a host
US10742746B2 (en) 2016-12-21 2020-08-11 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10237123B2 (en) 2016-12-21 2019-03-19 Nicira, Inc. Dynamic recovery from a split-brain failure in edge nodes
US10212071B2 (en) 2016-12-21 2019-02-19 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US11032246B2 (en) 2016-12-22 2021-06-08 Nicira, Inc. Context based firewall services for data message flows for multiple concurrent users on one machine
US10812451B2 (en) 2016-12-22 2020-10-20 Nicira, Inc. Performing appID based firewall services on a host
US10581960B2 (en) 2016-12-22 2020-03-03 Nicira, Inc. Performing context-rich attribute-based load balancing on a host
US10805332B2 (en) 2017-07-25 2020-10-13 Nicira, Inc. Context engine model
US10616045B2 (en) 2016-12-22 2020-04-07 Nicira, Inc. Migration of centralized routing components of logical router
US10802858B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Collecting and processing contextual attributes on a host
US10803173B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Performing context-rich attribute-based process control services on a host
US10200306B2 (en) 2017-03-07 2019-02-05 Nicira, Inc. Visualization of packet tracing operation results
US10681000B2 (en) 2017-06-30 2020-06-09 Nicira, Inc. Assignment of unique physical network addresses for logical network addresses
US10637800B2 (en) 2017-06-30 2020-04-28 Nicira, Inc Replacement of logical network addresses with physical network addresses
US11570092B2 (en) 2017-07-31 2023-01-31 Nicira, Inc. Methods for active-active stateful network service cluster
US11296984B2 (en) 2017-07-31 2022-04-05 Nicira, Inc. Use of hypervisor for active-active stateful network service cluster
US10951584B2 (en) 2017-07-31 2021-03-16 Nicira, Inc. Methods for active-active stateful network service cluster
US10652281B1 (en) * 2017-08-31 2020-05-12 Vmware, Inc. Network policy implementation in a tag-based policy architecture
US10608887B2 (en) 2017-10-06 2020-03-31 Nicira, Inc. Using packet tracing tool to automatically execute packet capture operations
US10805181B2 (en) 2017-10-29 2020-10-13 Nicira, Inc. Service operation chaining
CN107908447B (en) * 2017-10-31 2021-06-11 北京小鸟看看科技有限公司 Application switching method and device and virtual reality device
US10374827B2 (en) 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10778651B2 (en) 2017-11-15 2020-09-15 Nicira, Inc. Performing context-rich attribute-based encryption on a host
US11012420B2 (en) 2017-11-15 2021-05-18 Nicira, Inc. Third-party service chaining using packet encapsulation in a flow-based forwarding element
US10862773B2 (en) 2018-01-26 2020-12-08 Nicira, Inc. Performing services on data messages associated with endpoint machines
US10659252B2 (en) 2018-01-26 2020-05-19 Nicira, Inc Specifying and utilizing paths through a network
US10797910B2 (en) 2018-01-26 2020-10-06 Nicira, Inc. Specifying and utilizing paths through a network
US10802893B2 (en) 2018-01-26 2020-10-13 Nicira, Inc. Performing process control services on endpoint machines
US11153122B2 (en) 2018-02-19 2021-10-19 Nicira, Inc. Providing stateful services deployed in redundant gateways connected to asymmetric network
US10728174B2 (en) 2018-03-27 2020-07-28 Nicira, Inc. Incorporating layer 2 service between two interfaces of gateway device
US10805192B2 (en) 2018-03-27 2020-10-13 Nicira, Inc. Detecting failure of layer 2 service using broadcast messages
US10999220B2 (en) 2018-07-05 2021-05-04 Vmware, Inc. Context aware middlebox services at datacenter edge
US11184327B2 (en) 2018-07-05 2021-11-23 Vmware, Inc. Context aware middlebox services at datacenter edges
US10944673B2 (en) 2018-09-02 2021-03-09 Vmware, Inc. Redirection of data messages at logical network gateway
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
US10735541B2 (en) 2018-11-30 2020-08-04 Vmware, Inc. Distributed inline proxy
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN
US10929171B2 (en) 2019-02-22 2021-02-23 Vmware, Inc. Distributed forwarding for performing service chain operations
US11310202B2 (en) 2019-03-13 2022-04-19 Vmware, Inc. Sharing of firewall rules among multiple workloads in a hypervisor
CN110417668B (en) * 2019-07-24 2021-11-02 新华三大数据技术有限公司 Message transmission method and network equipment
US11159343B2 (en) 2019-08-30 2021-10-26 Vmware, Inc. Configuring traffic optimization using distributed edge services
US11283717B2 (en) 2019-10-30 2022-03-22 Vmware, Inc. Distributed fault tolerant service chain
US11140218B2 (en) 2019-10-30 2021-10-05 Vmware, Inc. Distributed service chain across multiple clouds
US11641305B2 (en) 2019-12-16 2023-05-02 Vmware, Inc. Network diagnosis in software-defined networking (SDN) environments
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
US11223494B2 (en) 2020-01-13 2022-01-11 Vmware, Inc. Service insertion for multicast traffic at boundary
US11659061B2 (en) 2020-01-20 2023-05-23 Vmware, Inc. Method of adjusting service function chains to improve network performance
US11153406B2 (en) 2020-01-20 2021-10-19 Vmware, Inc. Method of network performance visualization of service function chains
US11438257B2 (en) 2020-04-06 2022-09-06 Vmware, Inc. Generating forward and reverse direction connection-tracking records for service paths at a network edge
US11496437B2 (en) 2020-04-06 2022-11-08 Vmware, Inc. Selective ARP proxy
US11616755B2 (en) 2020-07-16 2023-03-28 Vmware, Inc. Facilitating distributed SNAT service
US11606294B2 (en) 2020-07-16 2023-03-14 Vmware, Inc. Host computer configured to facilitate distributed SNAT service
US11108728B1 (en) 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
US11611613B2 (en) 2020-07-24 2023-03-21 Vmware, Inc. Policy-based forwarding to a load balancer of a load balancing cluster
US11902050B2 (en) 2020-07-28 2024-02-13 VMware LLC Method for providing distributed gateway service at host computer
US11451413B2 (en) 2020-07-28 2022-09-20 Vmware, Inc. Method for advertising availability of distributed gateway service and machines at host computer
US11570090B2 (en) 2020-07-29 2023-01-31 Vmware, Inc. Flow tracing operation in container cluster
US11196628B1 (en) 2020-07-29 2021-12-07 Vmware, Inc. Monitoring container clusters
US11558426B2 (en) 2020-07-29 2023-01-17 Vmware, Inc. Connection tracking for container cluster
US11829793B2 (en) 2020-09-28 2023-11-28 Vmware, Inc. Unified management of virtual machines and bare metal computers
US11611625B2 (en) 2020-12-15 2023-03-21 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11734043B2 (en) 2020-12-15 2023-08-22 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11736436B2 (en) 2020-12-31 2023-08-22 Vmware, Inc. Identifying routes with indirect addressing in a datacenter
US11336533B1 (en) 2021-01-08 2022-05-17 Vmware, Inc. Network visualization of correlations between logical elements and associated physical elements
US11805101B2 (en) 2021-04-06 2023-10-31 Vmware, Inc. Secured suppression of address discovery messages
US11687210B2 (en) 2021-07-05 2023-06-27 Vmware, Inc. Criteria-based expansion of group nodes in a network topology visualization
US11711278B2 (en) 2021-07-24 2023-07-25 Vmware, Inc. Visualization of flow trace operation across multiple sites
US11677645B2 (en) 2021-09-17 2023-06-13 Vmware, Inc. Traffic monitoring
US11799761B2 (en) 2022-01-07 2023-10-24 Vmware, Inc. Scaling edge services with minimal disruption
US11899594B2 (en) 2022-06-21 2024-02-13 VMware LLC Maintenance of data message classification cache on smart NIC

Citations (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4667323A (en) * 1985-09-03 1987-05-19 Allen-Bradley Company, Inc. Industrialized token passing network
US4667287A (en) * 1982-10-28 1987-05-19 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4726018A (en) * 1986-08-25 1988-02-16 International Business Machines Corporation Method of providing priority access to a transmission communication ring
US5490252A (en) * 1992-09-30 1996-02-06 Bay Networks Group, Inc. System having central processor for transmitting generic packets to another processor to be altered and transmitting altered packets back to central processor for routing
US5491691A (en) * 1994-08-16 1996-02-13 Motorola, Inc. Method and apparatus for pacing asynchronous transfer mode (ATM) data cell transmission
US5568525A (en) * 1993-08-19 1996-10-22 International Business Machines Corporation System and method for connection of multiple protocol terminals
US5598414A (en) * 1991-02-06 1997-01-28 Walser; Robert A. Access to transmit on a message priority basis
US5745778A (en) * 1994-01-26 1998-04-28 Data General Corporation Apparatus and method for improved CPU affinity in a multiprocessor system
US5825772A (en) * 1995-11-15 1998-10-20 Cabletron Systems, Inc. Distributed connection-oriented services for switched communications networks
US5875290A (en) * 1997-03-27 1999-02-23 International Business Machines Corporation Method and program product for synchronizing operator initiated commands with a failover process in a distributed processing system
US5941973A (en) * 1992-02-18 1999-08-24 Hitachi, Ltd. Bus control system incorporating the coupling of two split-transaction busses of different hierarchy
US5963555A (en) * 1996-09-03 1999-10-05 Hitachi Ltd Router apparatus using ATM switch
US6014382A (en) * 1996-04-04 2000-01-11 Hitachi, Ltd. ATM switching system including a switching control portion for distributing call set-up requirement signals
US6047330A (en) * 1998-01-20 2000-04-04 Netscape Communications Corporation Virtual router discovery system
US6069895A (en) * 1997-08-29 2000-05-30 Nortel Networks Corporation Distributed route server
US6085238A (en) * 1996-04-23 2000-07-04 Matsushita Electric Works, Ltd. Virtual LAN system
US6098110A (en) * 1996-12-30 2000-08-01 Compaq Computer Corporation Network switch with a multiple bus structure and a bridge interface for transferring network data between different buses
US6169739B1 (en) * 1997-01-08 2001-01-02 Nec Corporation ATM VLAN multi-protocol client-server system using layer-3 header of packets for transporting connectionless and connection-oriented traffic
US6169793B1 (en) * 1996-12-24 2001-01-02 Evolving Systems, Inc. Systems and methods for providing order and service mediation for telecommunications systems
US6175867B1 (en) * 1998-03-23 2001-01-16 Mci World Com, Inc. System and method for managing networks addressed via common network addresses
US6192051B1 (en) * 1999-02-26 2001-02-20 Redstone Communications, Inc. Network router search engine using compressed tree forwarding table
US6212556B1 (en) * 1995-11-13 2001-04-03 Webxchange, Inc. Configurable value-added network (VAN) switching
US6220768B1 (en) * 1996-06-28 2001-04-24 Sun Microsystems, Inc. Network asset survey tool for gathering data about node equipment
US6226788B1 (en) * 1998-07-22 2001-05-01 Cisco Technology, Inc. Extensible network management system
US6260072B1 (en) * 1997-06-12 2001-07-10 Lucent Technologies Inc Method and apparatus for adaptive routing in packet networks
US6260073B1 (en) * 1996-12-30 2001-07-10 Compaq Computer Corporation Network switch including a switch manager for periodically polling the network ports to determine their status and controlling the flow of data between ports
US6266695B1 (en) * 1997-12-23 2001-07-24 Alcatel Usa Sourcing, L.P. Telecommunications switch management system
US6269099B1 (en) * 1998-07-01 2001-07-31 3Com Corporation Protocol and method for peer network device discovery
US6280638B1 (en) * 1996-12-12 2001-08-28 Belcho Alexandrov Belchev Apparatus for continuous purification of liquids, dewatering and drying of the separated solids
US6295297B1 (en) * 1997-12-29 2001-09-25 Samsung Electronics Co., Ltd. Gateway for connecting ATM-based access network to existing network
US6298130B1 (en) * 1997-09-30 2001-10-02 Genesys Telecommunications Laboratories Inc. Metadata-based network routing
US6304557B1 (en) * 1994-09-01 2001-10-16 Fujitsu Limited Communication network configuration detecting method and communication line information table creating method
US20010033580A1 (en) * 1997-11-19 2001-10-25 Dorsey Paul C. Multi-protocol packet translator
US20010043571A1 (en) * 2000-03-24 2001-11-22 Saqib Jang Multiple subscriber videoconferencing system
US6324583B1 (en) * 1998-11-17 2001-11-27 International Business Machines Corp. Method and apparatus for enabling communication between dissimilar protocol stacks
US6338092B1 (en) * 1998-09-24 2002-01-08 International Business Machines Corporation Method, system and computer program for replicating data in a distributed computed environment
US6339782B1 (en) * 1997-11-21 2002-01-15 International Business Machines Corporation Persistence mechanism and method for objects
US20020023171A1 (en) * 2000-03-20 2002-02-21 Garrett John W. Service selection in a shared access network using policy routing
US20020062344A1 (en) * 1998-09-11 2002-05-23 Tatu Ylonen Method and arrangement for secure tunneling of data between virtual routers
US20020066034A1 (en) * 2000-10-24 2002-05-30 Schlossberg Barry J. Distributed network security deception system
US6405262B1 (en) * 1995-07-14 2002-06-11 Microsoft Corporation Efficient inter-process object and interface pinging
US6414595B1 (en) * 2000-06-16 2002-07-02 Ciena Corporation Method and system for processing alarm objects in a communications network
US20020097872A1 (en) * 2001-01-24 2002-07-25 Maliszewski Richard L. Method of providing secure content-based user experience enhancement within a content protection architecture
US6434619B1 (en) * 1998-04-29 2002-08-13 Alcatel Canada Inc. Internet-enabled service management system and method
US6449650B1 (en) * 1999-02-01 2002-09-10 Redback Networks Inc. Methods and apparatus for deploying quality of service policies on a data communication network
US6463061B1 (en) * 1997-12-23 2002-10-08 Cisco Technology, Inc. Shared communications network employing virtual-private-network identifiers
US6466976B1 (en) * 1998-12-03 2002-10-15 Nortel Networks Limited System and method for providing desired service policies to subscribers accessing the internet
US20020152373A1 (en) * 2000-09-13 2002-10-17 Chih-Tang Sun Tunnel interface for securing traffic over a network
US6487666B1 (en) * 1999-01-15 2002-11-26 Cisco Technology, Inc. Intrusion detection signature analysis using regular expressions and logical operators
US20030026262A1 (en) * 2001-07-31 2003-02-06 Patrik Jarl Channel resource allocation arrangement and method
US20030033401A1 (en) * 1999-04-02 2003-02-13 Matthew W. Poisson Monitoring a virtual private network
US20030115308A1 (en) * 2001-12-19 2003-06-19 Michael Best Network management system architecture
US20030131228A1 (en) * 2002-01-10 2003-07-10 Twomey John E. System on a chip for network storage devices
US6625650B2 (en) * 1998-06-27 2003-09-23 Intel Corporation System for multi-layer broadband provisioning in computer networks
US20030212735A1 (en) * 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated network of processors
US20040037279A1 (en) * 2002-08-23 2004-02-26 David Zelig Virtual private LAN service using a multicast protocol
US6701449B1 (en) * 2000-04-20 2004-03-02 Ciprico, Inc. Method and apparatus for monitoring and analyzing network appliance status information
US20040042416A1 (en) * 2002-08-27 2004-03-04 Ngo Chuong Ngoc Virtual Local Area Network auto-discovery methods
US6738371B1 (en) * 1999-09-28 2004-05-18 Ericsson Inc. Ingress data queue management in a packet data router
US20040095934A1 (en) * 2002-11-18 2004-05-20 Cosine Communications, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
US6785224B2 (en) * 2000-03-06 2004-08-31 Fujitsu Limited Ring configuring method and node apparatus used in the ring
US6785691B1 (en) * 1999-10-13 2004-08-31 Avaya Technology Corp. Object oriented processing system and data sharing environment for applications therein
US6816462B1 (en) * 2000-08-02 2004-11-09 International Business Machines Corporation System and method to determine connectivity of a VPN secure tunnel
US20050002417A1 (en) * 2003-07-02 2005-01-06 Kelly Thomas J. Systems and methods for performing protocol conversions in a work machine
US20050055306A1 (en) * 1998-09-22 2005-03-10 Science Applications International Corporation User-defined dynamic collaborative environments
US6877661B2 (en) * 2000-08-16 2005-04-12 Richard M. Webb Scannable barcode display and methods for using the same
US20050081059A1 (en) * 1997-07-24 2005-04-14 Bandini Jean-Christophe Denis Method and system for e-mail filtering
US6883170B1 (en) * 2000-08-30 2005-04-19 Aspect Communication Corporation Method and system to maintain a hierarchy of instantiated application objects and to enable recovery from an applications failure
US20050108340A1 (en) * 2003-05-15 2005-05-19 Matt Gleeson Method and apparatus for filtering email spam based on similarity measures
US20050113114A1 (en) * 2003-11-26 2005-05-26 Nokia Corporation Method and apparatus to provide efficient routing of packets for a network initiated data session
US6920580B1 (en) * 2000-07-25 2005-07-19 Network Appliance, Inc. Negotiated graceful takeover in a node cluster
US7044362B2 (en) * 2001-10-10 2006-05-16 Hewlett-Packard Development Company, L.P. Electronic ticketing system and method
US20060206713A1 (en) * 2005-03-14 2006-09-14 Yahoo! Inc. Associating a postmark with a message to indicate trust
US7116665B2 (en) * 2002-06-04 2006-10-03 Fortinet, Inc. Methods and systems for a distributed provider edge
US7149216B1 (en) * 2000-09-05 2006-12-12 Cisco Technology, Inc. M-trie based packet processing
US7181547B1 (en) * 2001-06-28 2007-02-20 Fortinet, Inc. Identifying nodes in a ring network
US7243371B1 (en) * 2001-11-09 2007-07-10 Cisco Technology, Inc. Method and system for configurable network intrusion detection
US20070208810A1 (en) * 2004-04-05 2007-09-06 Miraj Mostafa Message Handling
US7293355B2 (en) * 2005-04-21 2007-11-13 Endicott Interconnect Technologies, Inc. Apparatus and method for making circuitized substrates in a continuous manner
US7499419B2 (en) * 2004-09-24 2009-03-03 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US7555284B2 (en) * 2002-05-21 2009-06-30 Nokia Corporation Method and a device for providing digital tickets in a mobile communications environment
US20090222459A1 (en) * 2008-02-21 2009-09-03 Joseph Steinberg System for allowing multiple relationship/membership identifiers to be consolidated to a single identifying device
US20100042546A1 (en) * 2005-10-23 2010-02-18 Roger Humbel Multimedia (VO) IP Solution for Mobile Telephones
US7720053B2 (en) * 2002-06-04 2010-05-18 Fortinet, Inc. Service processing switch
US20100122872A1 (en) * 2008-11-17 2010-05-20 Peter Korevaar Scaffold elevator
US20100146098A1 (en) * 2001-04-24 2010-06-10 Hitachi, Ltd Intergrated service management system
US20100146627A1 (en) * 2006-03-01 2010-06-10 Fortinet, Inc. Electronic message and data tracking system
US7761743B2 (en) * 2002-08-29 2010-07-20 Fortinet, Inc. Fault tolerant routing in a non-hot-standby configuration of a network routing system
US20100220741A1 (en) * 2003-08-27 2010-09-02 Fortinet, Inc. Heterogeneous media packet bridging
US20100219234A1 (en) * 2005-04-25 2010-09-02 Mobiqa Limited Mobile ticket authentication
US7961615B2 (en) * 2004-11-18 2011-06-14 Fortinet, Inc. Managing hierarchically organized subscriber profiles

Family Cites Families (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4590468A (en) 1983-03-10 1986-05-20 Western Digital Corporation Token access controller protocol and architecture
US6453406B1 (en) 1990-10-17 2002-09-17 Compaq Computer Corporation Multiprocessor system with fiber optic bus interconnect for interprocessor communications
US5371852A (en) 1992-10-14 1994-12-06 International Business Machines Corporation Method and apparatus for making a cluster of computers appear as a single host on a network
US5581705A (en) * 1993-12-13 1996-12-03 Cray Research, Inc. Messaging facility with hardware tail pointer and software implemented head pointer message queue for distributed memory massively parallel processing system
US5550816A (en) 1994-12-29 1996-08-27 Storage Technology Corporation Method and apparatus for virtual switching
US6058307A (en) 1995-11-30 2000-05-02 Amsc Subsidiary Corporation Priority and preemption service system for satellite related communication using central controller
US6542502B1 (en) 1996-01-26 2003-04-01 International Business Machines Corporation Multicasting using a wormhole routing switching element
US5920705A (en) 1996-01-31 1999-07-06 Nokia Ip, Inc. Method and apparatus for dynamically shifting between routing and switching packets in a transmission network
US5892924A (en) 1996-01-31 1999-04-06 Ipsilon Networks, Inc. Method and apparatus for dynamically shifting between routing and switching packets in a transmission network
US5841973A (en) 1996-03-13 1998-11-24 Cray Research, Inc. Messaging in distributed memory multiprocessing system having shell circuitry for atomic control of message storage queue's tail pointer structure in local memory
US5964847A (en) 1997-03-10 1999-10-12 International Business Machines Corporation Mobile client computer interacting with docking device
JP3575225B2 (en) 1997-05-19 2004-10-13 株式会社日立製作所 Packet switch, packet switching network, and packet switching method
US6108699A (en) 1997-06-27 2000-08-22 Sun Microsystems, Inc. System and method for modifying membership in a clustered distributed computer system and updating system configuration
US7117358B2 (en) 1997-07-24 2006-10-03 Tumbleweed Communications Corp. Method and system for filtering communication
US7162738B2 (en) 1998-11-03 2007-01-09 Tumbleweed Communications Corp. E-mail firewall with stored key encryption/decryption
US6256295B1 (en) 1997-09-25 2001-07-03 Nortel Networks Limited Method and apparatus for determining multiple minimally-overlapping paths between nodes in a network
US6490620B1 (en) 1997-09-26 2002-12-03 Worldcom, Inc. Integrated proxy interface for web based broadband telecommunications management
US6014669A (en) 1997-10-01 2000-01-11 Sun Microsystems, Inc. Highly-available distributed cluster configuration database
US6894994B1 (en) 1997-11-03 2005-05-17 Qualcomm Incorporated High data rate wireless packet data communications system
US6343083B1 (en) 1998-04-09 2002-01-29 Alcatel Usa Sourcing, L.P. Method and apparatus for supporting a connectionless communication protocol over an ATM network
US6269452B1 (en) 1998-04-27 2001-07-31 Cisco Technology, Inc. System and method for fault recovery for a two line bi-directional ring network
CN1214689C (en) 1998-06-19 2005-08-10 杜松网络公司 Device for performing IP forwarding and ATM switching
US6640248B1 (en) 1998-07-10 2003-10-28 Malibu Networks, Inc. Application-aware, quality of service (QoS) sensitive, media access control (MAC) layer
US6680922B1 (en) 1998-07-10 2004-01-20 Malibu Networks, Inc. Method for the recognition and operation of virtual private networks (VPNs) over a wireless point to multi-point (PtMP) transmission system
US6769124B1 (en) 1998-07-22 2004-07-27 Cisco Technology, Inc. Persistent storage of information objects
US6286038B1 (en) 1998-08-03 2001-09-04 Nortel Networks Limited Method and apparatus for remotely configuring a network device
US6920146B1 (en) 1998-10-05 2005-07-19 Packet Engines Incorporated Switching device with multistage queuing scheme
US6493349B1 (en) 1998-11-13 2002-12-10 Nortel Networks Limited Extended internet protocol virtual private network architectures
US6609153B1 (en) * 1998-12-24 2003-08-19 Redback Networks Inc. Domain isolation through virtual network machines
US6654787B1 (en) 1998-12-31 2003-11-25 Brightmail, Incorporated Method and apparatus for filtering e-mail
US6738821B1 (en) 1999-01-26 2004-05-18 Adaptec, Inc. Ethernet storage protocol networks
US6789118B1 (en) * 1999-02-23 2004-09-07 Alcatel Multi-service network switch with policy based routing
US7116679B1 (en) * 1999-02-23 2006-10-03 Alcatel Multi-service network switch with a generic forwarding interface
US6674756B1 (en) * 1999-02-23 2004-01-06 Alcatel Multi-service network switch with multiple virtual routers
US6246682B1 (en) 1999-03-05 2001-06-12 Transwitch Corp. Method and apparatus for managing multiple ATM cell queues
US6658013B1 (en) 1999-03-23 2003-12-02 Nortel Networks Limited Method and apparatus for ensuring survivability of inter-ring traffic
EP1041776A1 (en) * 1999-03-30 2000-10-04 International Business Machines Corporation Multiple ARP functionality for an IP data transmission system
US6542515B1 (en) 1999-05-19 2003-04-01 Sun Microsystems, Inc. Profile service
US6807181B1 (en) 1999-05-19 2004-10-19 Sun Microsystems, Inc. Context based control data
US6553423B1 (en) 1999-05-27 2003-04-22 Cisco Technology, Inc. Method and apparatus for dynamic exchange of capabilities between adjacent/neighboring networks nodes
JP4110671B2 (en) 1999-05-27 2008-07-02 株式会社日立製作所 Data transfer device
US6275470B1 (en) 1999-06-18 2001-08-14 Digital Island, Inc. On-demand overlay routing for computer-based communication networks
US6694437B1 (en) 1999-06-22 2004-02-17 Institute For Information Technology System and method for on-demand access concentrator for virtual private networks
US7058716B1 (en) 1999-07-02 2006-06-06 Covad Communications Group, Inc. Automatic configuration and provisioning of virtual circuits for initial installation of high bandwidth connections
US6990103B1 (en) 1999-07-13 2006-01-24 Alcatel Canada Inc. Method and apparatus for providing distributed communication routing
US6597956B1 (en) 1999-08-23 2003-07-22 Terraspring, Inc. Method and apparatus for controlling an extensible computing system
US6532088B1 (en) 1999-09-10 2003-03-11 Alcatel System and method for packet level distributed routing in fiber optic rings
US7376827B1 (en) 1999-11-05 2008-05-20 Cisco Technology, Inc. Directory-enabled network elements
US6934292B1 (en) * 1999-11-09 2005-08-23 Intel Corporation Method and system for emulating a single router in a switch stack
US6775267B1 (en) 1999-12-30 2004-08-10 At&T Corp Method for billing IP broadband subscribers
US6775284B1 (en) 2000-01-07 2004-08-10 International Business Machines Corporation Method and system for frame and protocol classification
JP2001202371A (en) 2000-01-19 2001-07-27 Sony Corp Data communication system and receiver to be used therefor
US6496935B1 (en) 2000-03-02 2002-12-17 Check Point Software Technologies Ltd System, device and method for rapid packet filtering and processing
US6977917B2 (en) 2000-03-10 2005-12-20 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for mapping an IP address to an MSISDN number within a service network
US7096495B1 (en) 2000-03-31 2006-08-22 Intel Corporation Network session management
US7028333B2 (en) 2000-04-12 2006-04-11 Corente, Inc. Methods and systems for partners in virtual networks
US7181766B2 (en) 2000-04-12 2007-02-20 Corente, Inc. Methods and system for providing network services using at least one processor interfacing a base network
US7062642B1 (en) 2000-05-20 2006-06-13 Ciena Corporation Policy based provisioning of network device resources
US6732314B1 (en) 2000-05-26 2004-05-04 3Com Corporation Method and apparatus for L2TP forward error correction
FI20001574A (en) 2000-06-30 2001-12-31 Nokia Corp Resource allocation and service forwarding over a wireless network
US6668282B1 (en) 2000-08-02 2003-12-23 International Business Machines Corporation System and method to monitor and determine if an active IPSec tunnel has become disabled
US7216179B2 (en) 2000-08-16 2007-05-08 Semandex Networks Inc. High-performance addressing and routing of data packets with semantically descriptive labels in a computer network
US7263106B2 (en) 2000-09-13 2007-08-28 Fortinet, Inc. System and protocol for frame relay service over the internet
US7174372B1 (en) 2000-09-13 2007-02-06 Fortinet, Inc. System and method for managing router metadata
US7111072B1 (en) 2000-09-13 2006-09-19 Cosine Communications, Inc. Packet routing system and method
US7487232B1 (en) 2000-09-13 2009-02-03 Fortinet, Inc. Switch management system and method
US7272643B1 (en) 2000-09-13 2007-09-18 Fortinet, Inc. System and method for managing and provisioning virtual routers
US7444398B1 (en) 2000-09-13 2008-10-28 Fortinet, Inc. System and method for delivering security services
US7389358B1 (en) * 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US6822958B1 (en) 2000-09-25 2004-11-23 Integrated Device Technology, Inc. Implementation of multicast in an ATM switch
US6985447B2 (en) * 2000-10-20 2006-01-10 Nortel Networks Limited Label switched traffic routing and signaling in a label switched communication packet network
US6985956B2 (en) 2000-11-02 2006-01-10 Sun Microsystems, Inc. Switching system
WO2002061525A2 (en) 2000-11-02 2002-08-08 Pirus Networks Tcp/udp acceleration
US7313614B2 (en) 2000-11-02 2007-12-25 Sun Microsystems, Inc. Switching system
KR100703499B1 (en) 2000-12-09 2007-04-03 삼성전자주식회사 Database structure for implementing traffic engineering function in multi protocol label switching system and constructing method thereof
US6885667B1 (en) * 2000-12-26 2005-04-26 Cisco Technology, Inc. Redirection to a virtual router
US7159031B1 (en) 2001-01-26 2007-01-02 Fortinet, Inc. Remote customer management of virtual routers allocated to the customer
US7225259B2 (en) 2001-02-21 2007-05-29 Nokia Inc. Service tunnel over a connectionless network
US7042843B2 (en) 2001-03-02 2006-05-09 Broadcom Corporation Algorithm for time based queuing in network traffic engineering
US7325249B2 (en) 2001-04-30 2008-01-29 Aol Llc Identifying unwanted electronic messages
US7042848B2 (en) 2001-05-04 2006-05-09 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
US6922774B2 (en) 2001-05-14 2005-07-26 The United States Of America As Represented By The National Security Agency Device for and method of secure computing using virtual machines
US6952397B2 (en) 2001-06-07 2005-10-04 Corrigent Systems Ltd. Communication in a bidirectional ring network with single-direction receiving
US7020143B2 (en) 2001-06-18 2006-03-28 Ericsson Inc. System for and method of differentiated queuing in a routing system
US6940864B2 (en) 2001-07-16 2005-09-06 International Business Machines Corporation Network access traffic sorter
US7054311B2 (en) 2001-07-27 2006-05-30 4198638 Canada Inc. Methods and apparatus for storage and processing of routing information
US20030055920A1 (en) 2001-09-17 2003-03-20 Deepak Kakadia Method and apparatus for automatic quality of service configuration based on traffic flow and other network parameters
US7342917B2 (en) 2001-10-02 2008-03-11 Comverse, Inc. Multimedia personalized call management (MPCM)
US7316029B1 (en) 2001-10-25 2008-01-01 Sprint Communications Company L.P. Network security services architecture
US7484003B2 (en) 2001-11-17 2009-01-27 Redback Networks Inc. Method and apparatus for multiple contexts and layer 3 virtual private networks
CA2365681A1 (en) 2001-12-19 2003-06-19 Alcatel Canada Inc. System and method for managing information for elements in a communication network
US6982987B2 (en) 2002-01-10 2006-01-03 Harris Corporation Wireless communication network including data prioritization and packet reception error determination features and related methods
US20030174650A1 (en) 2002-03-15 2003-09-18 Broadcom Corporation Weighted fair queuing (WFQ) shaper
US20030185221A1 (en) 2002-03-29 2003-10-02 Alan Deikman Network controller with shadowing of software routing tables to hardware routing tables
US7082477B1 (en) 2002-04-30 2006-07-25 Cisco Technology, Inc. Virtual application of features to electronic messages
US7221945B2 (en) 2002-05-03 2007-05-22 Leapstone Systems, Inc. System and method for establishing and controlling access to network resources
US7161904B2 (en) 2002-06-04 2007-01-09 Fortinet, Inc. System and method for hierarchical metering in a virtual router based network switch
US7203192B2 (en) 2002-06-04 2007-04-10 Fortinet, Inc. Network packet steering
US7187676B2 (en) 2002-06-04 2007-03-06 Sun Microsystems, Inc. Apparatus and method for steering a communication to an open stream
US7340535B1 (en) 2002-06-04 2008-03-04 Fortinet, Inc. System and method for controlling routing in a virtual router system
US7177311B1 (en) 2002-06-04 2007-02-13 Fortinet, Inc. System and method for routing traffic through a virtual router-based network switch
US20040006601A1 (en) 2002-07-01 2004-01-08 Bernstein David B. Method and system for optimized persistent messaging
US6907039B2 (en) 2002-07-20 2005-06-14 Redback Networks Inc. Method and apparatus for routing and forwarding between virtual routers within a single network element
US20040019651A1 (en) 2002-07-29 2004-01-29 Andaker Kristian L. M. Categorizing electronic messages based on collaborative feedback
US7587512B2 (en) 2002-10-16 2009-09-08 Eric White System and method for dynamic bandwidth provisioning
US20040078772A1 (en) 2002-10-16 2004-04-22 Cosine Communications, Inc. Dynamic route exchange
US20040203752A1 (en) 2002-11-18 2004-10-14 Toshiba America Information Systems, Inc. Mobility communications system
US20040199569A1 (en) 2003-02-18 2004-10-07 Mohan Kalkunte Method and system for handling traffic for server systems
US7499398B2 (en) 2003-04-16 2009-03-03 International Business Machines Corporation Method and system for oversubscribing bandwidth in a communications network
US7386010B2 (en) 2003-06-13 2008-06-10 Corrigent Systems Ltd Multiprotocol media conversion
US7839843B2 (en) 2003-09-18 2010-11-23 Cisco Technology, Inc. Distributed forwarding in virtual network devices
ATE538627T1 (en) * 2003-11-13 2012-01-15 Nokia Corp FLEXIBLE CONNECTOR WITH TWO-AXIS CIRCUIT BOARD LEADS
US8289906B2 (en) 2004-03-26 2012-10-16 Samsung Electronics Co. Ltd. Method and system for assigning servers based on server status in a wireless network
DE602005018213D1 (en) 2004-05-24 2010-01-21 Computer Ass Think Inc SYSTEM AND METHOD FOR AUTOMATIC CONFIGURATION OF A MOBILE DEVICE
EP1800439B1 (en) 2004-10-05 2008-03-05 Telefonaktiebolaget LM Ericsson (publ) Arrangement and method relating to service provisioning control
US7378827B2 (en) * 2005-08-24 2008-05-27 Micrel, Incorporated Analog internal soft-start and clamp circuit for switching regulator
JP4740775B2 (en) 2006-03-20 2011-08-03 日産自動車株式会社 Engine intake air amount control device
US7545740B2 (en) 2006-04-07 2009-06-09 Corrigent Systems Ltd. Two-way link aggregation

Patent Citations (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4667287A (en) * 1982-10-28 1987-05-19 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4667323A (en) * 1985-09-03 1987-05-19 Allen-Bradley Company, Inc. Industrialized token passing network
US4726018A (en) * 1986-08-25 1988-02-16 International Business Machines Corporation Method of providing priority access to a transmission communication ring
US5598414A (en) * 1991-02-06 1997-01-28 Walser; Robert A. Access to transmit on a message priority basis
US5941973A (en) * 1992-02-18 1999-08-24 Hitachi, Ltd. Bus control system incorporating the coupling of two split-transaction busses of different hierarchy
US5490252A (en) * 1992-09-30 1996-02-06 Bay Networks Group, Inc. System having central processor for transmitting generic packets to another processor to be altered and transmitting altered packets back to central processor for routing
US5568525A (en) * 1993-08-19 1996-10-22 International Business Machines Corporation System and method for connection of multiple protocol terminals
US5745778A (en) * 1994-01-26 1998-04-28 Data General Corporation Apparatus and method for improved CPU affinity in a multiprocessor system
US5491691A (en) * 1994-08-16 1996-02-13 Motorola, Inc. Method and apparatus for pacing asynchronous transfer mode (ATM) data cell transmission
US6304557B1 (en) * 1994-09-01 2001-10-16 Fujitsu Limited Communication network configuration detecting method and communication line information table creating method
US6405262B1 (en) * 1995-07-14 2002-06-11 Microsoft Corporation Efficient inter-process object and interface pinging
US6212556B1 (en) * 1995-11-13 2001-04-03 Webxchange, Inc. Configurable value-added network (VAN) switching
US5825772A (en) * 1995-11-15 1998-10-20 Cabletron Systems, Inc. Distributed connection-oriented services for switched communications networks
US6014382A (en) * 1996-04-04 2000-01-11 Hitachi, Ltd. ATM switching system including a switching control portion for distributing call set-up requirement signals
US6085238A (en) * 1996-04-23 2000-07-04 Matsushita Electric Works, Ltd. Virtual LAN system
US6220768B1 (en) * 1996-06-28 2001-04-24 Sun Microsystems, Inc. Network asset survey tool for gathering data about node equipment
US5963555A (en) * 1996-09-03 1999-10-05 Hitachi Ltd Router apparatus using ATM switch
US6280638B1 (en) * 1996-12-12 2001-08-28 Belcho Alexandrov Belchev Apparatus for continuous purification of liquids, dewatering and drying of the separated solids
US6169793B1 (en) * 1996-12-24 2001-01-02 Evolving Systems, Inc. Systems and methods for providing order and service mediation for telecommunications systems
US6260073B1 (en) * 1996-12-30 2001-07-10 Compaq Computer Corporation Network switch including a switch manager for periodically polling the network ports to determine their status and controlling the flow of data between ports
US6098110A (en) * 1996-12-30 2000-08-01 Compaq Computer Corporation Network switch with a multiple bus structure and a bridge interface for transferring network data between different buses
US6169739B1 (en) * 1997-01-08 2001-01-02 Nec Corporation ATM VLAN multi-protocol client-server system using layer-3 header of packets for transporting connectionless and connection-oriented traffic
US5875290A (en) * 1997-03-27 1999-02-23 International Business Machines Corporation Method and program product for synchronizing operator initiated commands with a failover process in a distributed processing system
US6260072B1 (en) * 1997-06-12 2001-07-10 Lucent Technologies Inc Method and apparatus for adaptive routing in packet networks
US20050081059A1 (en) * 1997-07-24 2005-04-14 Bandini Jean-Christophe Denis Method and system for e-mail filtering
US6069895A (en) * 1997-08-29 2000-05-30 Nortel Networks Corporation Distributed route server
US6298130B1 (en) * 1997-09-30 2001-10-02 Genesys Telecommunications Laboratories Inc. Metadata-based network routing
US20010033580A1 (en) * 1997-11-19 2001-10-25 Dorsey Paul C. Multi-protocol packet translator
US6339782B1 (en) * 1997-11-21 2002-01-15 International Business Machines Corporation Persistence mechanism and method for objects
US6463061B1 (en) * 1997-12-23 2002-10-08 Cisco Technology, Inc. Shared communications network employing virtual-private-network identifiers
US6266695B1 (en) * 1997-12-23 2001-07-24 Alcatel Usa Sourcing, L.P. Telecommunications switch management system
US6295297B1 (en) * 1997-12-29 2001-09-25 Samsung Electronics Co., Ltd. Gateway for connecting ATM-based access network to existing network
US6047330A (en) * 1998-01-20 2000-04-04 Netscape Communications Corporation Virtual router discovery system
US6175867B1 (en) * 1998-03-23 2001-01-16 Mci World Com, Inc. System and method for managing networks addressed via common network addresses
US6434619B1 (en) * 1998-04-29 2002-08-13 Alcatel Canada Inc. Internet-enabled service management system and method
US6625650B2 (en) * 1998-06-27 2003-09-23 Intel Corporation System for multi-layer broadband provisioning in computer networks
US6269099B1 (en) * 1998-07-01 2001-07-31 3Com Corporation Protocol and method for peer network device discovery
US6226788B1 (en) * 1998-07-22 2001-05-01 Cisco Technology, Inc. Extensible network management system
US20020062344A1 (en) * 1998-09-11 2002-05-23 Tatu Ylonen Method and arrangement for secure tunneling of data between virtual routers
US20050055306A1 (en) * 1998-09-22 2005-03-10 Science Applications International Corporation User-defined dynamic collaborative environments
US6338092B1 (en) * 1998-09-24 2002-01-08 International Business Machines Corporation Method, system and computer program for replicating data in a distributed computed environment
US6324583B1 (en) * 1998-11-17 2001-11-27 International Business Machines Corp. Method and apparatus for enabling communication between dissimilar protocol stacks
US6466976B1 (en) * 1998-12-03 2002-10-15 Nortel Networks Limited System and method for providing desired service policies to subscribers accessing the internet
US6487666B1 (en) * 1999-01-15 2002-11-26 Cisco Technology, Inc. Intrusion detection signature analysis using regular expressions and logical operators
US6449650B1 (en) * 1999-02-01 2002-09-10 Redback Networks Inc. Methods and apparatus for deploying quality of service policies on a data communication network
US6192051B1 (en) * 1999-02-26 2001-02-20 Redstone Communications, Inc. Network router search engine using compressed tree forwarding table
US20030033401A1 (en) * 1999-04-02 2003-02-13 Matthew W. Poisson Monitoring a virtual private network
US6738371B1 (en) * 1999-09-28 2004-05-18 Ericsson Inc. Ingress data queue management in a packet data router
US6785691B1 (en) * 1999-10-13 2004-08-31 Avaya Technology Corp. Object oriented processing system and data sharing environment for applications therein
US6785224B2 (en) * 2000-03-06 2004-08-31 Fujitsu Limited Ring configuring method and node apparatus used in the ring
US20020023171A1 (en) * 2000-03-20 2002-02-21 Garrett John W. Service selection in a shared access network using policy routing
US20010043571A1 (en) * 2000-03-24 2001-11-22 Saqib Jang Multiple subscriber videoconferencing system
US6701449B1 (en) * 2000-04-20 2004-03-02 Ciprico, Inc. Method and apparatus for monitoring and analyzing network appliance status information
US6414595B1 (en) * 2000-06-16 2002-07-02 Ciena Corporation Method and system for processing alarm objects in a communications network
US6920580B1 (en) * 2000-07-25 2005-07-19 Network Appliance, Inc. Negotiated graceful takeover in a node cluster
US6816462B1 (en) * 2000-08-02 2004-11-09 International Business Machines Corporation System and method to determine connectivity of a VPN secure tunnel
US6877661B2 (en) * 2000-08-16 2005-04-12 Richard M. Webb Scannable barcode display and methods for using the same
US6883170B1 (en) * 2000-08-30 2005-04-19 Aspect Communication Corporation Method and system to maintain a hierarchy of instantiated application objects and to enable recovery from an applications failure
US7149216B1 (en) * 2000-09-05 2006-12-12 Cisco Technology, Inc. M-trie based packet processing
US20020152373A1 (en) * 2000-09-13 2002-10-17 Chih-Tang Sun Tunnel interface for securing traffic over a network
US20020066034A1 (en) * 2000-10-24 2002-05-30 Schlossberg Barry J. Distributed network security deception system
US20020097872A1 (en) * 2001-01-24 2002-07-25 Maliszewski Richard L. Method of providing secure content-based user experience enhancement within a content protection architecture
US20100146098A1 (en) * 2001-04-24 2010-06-10 Hitachi, Ltd Intergrated service management system
US7181547B1 (en) * 2001-06-28 2007-02-20 Fortinet, Inc. Identifying nodes in a ring network
US20100189016A1 (en) * 2001-06-28 2010-07-29 Fortinet, Inc. Identifying nodes in a ring network
US7890663B2 (en) * 2001-06-28 2011-02-15 Fortinet, Inc. Identifying nodes in a ring network
US20030026262A1 (en) * 2001-07-31 2003-02-06 Patrik Jarl Channel resource allocation arrangement and method
US7044362B2 (en) * 2001-10-10 2006-05-16 Hewlett-Packard Development Company, L.P. Electronic ticketing system and method
US7243371B1 (en) * 2001-11-09 2007-07-10 Cisco Technology, Inc. Method and system for configurable network intrusion detection
US20030115308A1 (en) * 2001-12-19 2003-06-19 Michael Best Network management system architecture
US20030131228A1 (en) * 2002-01-10 2003-07-10 Twomey John E. System on a chip for network storage devices
US20030212735A1 (en) * 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated network of processors
US7555284B2 (en) * 2002-05-21 2009-06-30 Nokia Corporation Method and a device for providing digital tickets in a mobile communications environment
US20100220732A1 (en) * 2002-06-04 2010-09-02 Fortinet, Inc. Service processing switch
US7116665B2 (en) * 2002-06-04 2006-10-03 Fortinet, Inc. Methods and systems for a distributed provider edge
US7720053B2 (en) * 2002-06-04 2010-05-18 Fortinet, Inc. Service processing switch
US20040037279A1 (en) * 2002-08-23 2004-02-26 David Zelig Virtual private LAN service using a multicast protocol
US20040042416A1 (en) * 2002-08-27 2004-03-04 Ngo Chuong Ngoc Virtual Local Area Network auto-discovery methods
US7761743B2 (en) * 2002-08-29 2010-07-20 Fortinet, Inc. Fault tolerant routing in a non-hot-standby configuration of a network routing system
US7925920B2 (en) * 2002-08-29 2011-04-12 Wilson Talaugon 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
US20040095934A1 (en) * 2002-11-18 2004-05-20 Cosine Communications, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
US20050108340A1 (en) * 2003-05-15 2005-05-19 Matt Gleeson Method and apparatus for filtering email spam based on similarity measures
US20050002417A1 (en) * 2003-07-02 2005-01-06 Kelly Thomas J. Systems and methods for performing protocol conversions in a work machine
US7957407B2 (en) * 2003-08-27 2011-06-07 Fortinet, Inc. Heterogeneous media packet bridging
US20100220741A1 (en) * 2003-08-27 2010-09-02 Fortinet, Inc. Heterogeneous media packet bridging
US20050113114A1 (en) * 2003-11-26 2005-05-26 Nokia Corporation Method and apparatus to provide efficient routing of packets for a network initiated data session
US20070208810A1 (en) * 2004-04-05 2007-09-06 Miraj Mostafa Message Handling
US7499419B2 (en) * 2004-09-24 2009-03-03 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
US20100142527A1 (en) * 2004-09-24 2010-06-10 Fortinet, Inc. Scalable IP-Services Enabled Multicast Forwarding with Efficient Resource Utilization
US7961615B2 (en) * 2004-11-18 2011-06-14 Fortinet, Inc. Managing hierarchically organized subscriber profiles
US20060206713A1 (en) * 2005-03-14 2006-09-14 Yahoo! Inc. Associating a postmark with a message to indicate trust
US7293355B2 (en) * 2005-04-21 2007-11-13 Endicott Interconnect Technologies, Inc. Apparatus and method for making circuitized substrates in a continuous manner
US20100219234A1 (en) * 2005-04-25 2010-09-02 Mobiqa Limited Mobile ticket authentication
US20100042546A1 (en) * 2005-10-23 2010-02-18 Roger Humbel Multimedia (VO) IP Solution for Mobile Telephones
US20100146627A1 (en) * 2006-03-01 2010-06-10 Fortinet, Inc. Electronic message and data tracking system
US20090222459A1 (en) * 2008-02-21 2009-09-03 Joseph Steinberg System for allowing multiple relationship/membership identifiers to be consolidated to a single identifying device
US20100122872A1 (en) * 2008-11-17 2010-05-20 Peter Korevaar Scaffold elevator

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080219254A1 (en) * 2000-07-10 2008-09-11 Alterwan, Inc. Wide area network using internet with high quality of service
US8595478B2 (en) * 2000-07-10 2013-11-26 AlterWAN Inc. Wide area network with high quality of service
US8208409B2 (en) 2001-06-28 2012-06-26 Fortinet, Inc. Identifying nodes in a ring network
US20100189016A1 (en) * 2001-06-28 2010-07-29 Fortinet, Inc. Identifying nodes in a ring network
US8085776B2 (en) 2002-06-04 2011-12-27 Fortinet, Inc. Methods and systems for a distributed provider edge
US20070064704A1 (en) * 2002-06-04 2007-03-22 Fortinet, Inc. Methods and systems for a distributed provider edge
US20110122872A1 (en) * 2004-09-24 2011-05-26 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
US8369258B2 (en) 2004-09-24 2013-02-05 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US20100142527A1 (en) * 2004-09-24 2010-06-10 Fortinet, Inc. Scalable IP-Services Enabled Multicast Forwarding with Efficient Resource Utilization
US20110142047A1 (en) * 2009-12-10 2011-06-16 Electronics and Telecommunications Rearch Institute Backbone edge switching apparatus and packet processing method of the backbone edge switching apparatus
US8582575B2 (en) * 2009-12-10 2013-11-12 Electronics And Telecommunications Research Institute Backbone edge switching apparatus and packet processing method of the backbone edge switching apparatus
US9185073B2 (en) 2011-10-06 2015-11-10 Qualcomm Incorporated Systems and methods for data packet processing
US20130223221A1 (en) * 2012-02-27 2013-08-29 Verizon Patent And Licensing Inc. Traffic Policing For MPLS-Based Network
US9059912B2 (en) * 2012-02-27 2015-06-16 Verizon Patent And Licensing Inc. Traffic policing for MPLS-based network
US20150200860A1 (en) * 2014-01-14 2015-07-16 Marvell International Ltd. Method and apparatus for packet classification
US10050892B2 (en) * 2014-01-14 2018-08-14 Marvell International Ltd. Method and apparatus for packet classification
US20220232299A1 (en) * 2016-01-07 2022-07-21 Cisco Technology, Inc. Network Telemetry with Byte Distribution and Cryptographic Protocol Data Elements
US10362373B2 (en) * 2016-01-07 2019-07-23 Cisco Technology, Inc. Network telemetry with byte distribution and cryptographic protocol data elements
US20170201810A1 (en) * 2016-01-07 2017-07-13 Cisco Technology, Inc. Network Telemetry with Byte Distribution and Cryptographic Protocol Data Elements
US11800260B2 (en) 2016-01-07 2023-10-24 Cisco Technology, Inc. Network telemetry with byte distribution and cryptographic protocol data elements
US10932017B2 (en) * 2016-01-07 2021-02-23 Cisco Technology, Inc. Network telemetry with byte distribution and cryptographic protocol data elements
US11477548B2 (en) * 2016-01-07 2022-10-18 Cisco Technology, Inc. Network telemetry with byte distribution and cryptographic protocol data elements
US11272268B2 (en) * 2016-01-07 2022-03-08 Cisco Technology, Inc. Network telemetry with byte distribution and cryptographic protocol data elements
US10594734B1 (en) * 2017-04-21 2020-03-17 Palo Alto Networks, Inc. Dynamic per subscriber policy enablement for security platforms within service provider network environments
US11233829B2 (en) 2017-04-21 2022-01-25 Palo Alto Networks, Inc. Dynamic per subscriber policy enablement for security platforms within service provider network environments
US11528253B2 (en) 2017-04-21 2022-12-13 Palo Alto Networks, Inc. Security platform for service provider network environments
US11777994B2 (en) 2017-04-21 2023-10-03 Palo Alto Networks, Inc. Dynamic per subscriber policy enablement for security platforms within service provider network environments
US10601776B1 (en) * 2017-04-21 2020-03-24 Palo Alto Networks, Inc. Security platform for service provider network environments
US11665087B2 (en) 2021-09-15 2023-05-30 International Business Machines Corporation Transparent service-aware multi-path networking with a feature of multiplexing

Also Published As

Publication number Publication date
US7389358B1 (en) 2008-06-17
US20080259934A1 (en) 2008-10-23
US7818452B2 (en) 2010-10-19

Similar Documents

Publication Publication Date Title
US7389358B1 (en) Distributed virtual system to support managed, network-based services
US11646964B2 (en) System, apparatus and method for providing a virtual network edge and overlay with virtual control plane
US20230224246A1 (en) System, apparatus and method for providing a virtual network edge and overlay with virtual control plane
US10523593B2 (en) System, apparatus and method for providing a virtual network edge and overlay
EP2225663B1 (en) Providing services to packet flows in a network
US9929964B2 (en) System, apparatus and method for providing aggregation of connections with a secure and trusted virtual network overlay
US7738457B2 (en) Method and system for virtual routing using containers
US7489700B2 (en) Virtual access router
EP1712056B1 (en) Tunneled security groups
US9225638B2 (en) Method and system for service switching using service tags
US8743696B2 (en) Mobile transport solution for offloading to an alternate network
US20100100616A1 (en) Method and apparatus for controlling traffic between different entities on a network
US20040223497A1 (en) Communications network with converged services
EP1062784B1 (en) Providing secure access to network services
US8526435B2 (en) Packet node for applying service path routing at the MAC layer
WO2017004693A1 (en) System, apparatus and method for providing a virtual network edge and overlay
Albuquerque et al. Global information grid (GIG) edge network interface architecture
Cisco Introduction to Cisco MPLS VPN Technology
Cisco Introduction to MPLS VPN Technology
MXPA03008476A (en) System, method and apparatus that isolate virtual private network (vpn) and best effort traffic to resist denial of service attacks.
Vacca Virtual Private Networks: Secure Remote Access Over the Internet
Vacca VPNs: Secure Remote Access over the Internet
Redlich et al. IP services creation in a programmable router
ALGhamdi Virtual Private Networks
Sirisukha The Advantages A Virtual Private Network For Computer Security

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION