US20020029288A1 - Internet protocol (IP) work group routing - Google Patents
Internet protocol (IP) work group routing Download PDFInfo
- Publication number
- US20020029288A1 US20020029288A1 US09/882,275 US88227501A US2002029288A1 US 20020029288 A1 US20020029288 A1 US 20020029288A1 US 88227501 A US88227501 A US 88227501A US 2002029288 A1 US2002029288 A1 US 2002029288A1
- Authority
- US
- United States
- Prior art keywords
- host
- address
- work group
- interface
- interfaces
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5069—Address allocation for group communication, multicast communication or broadcast communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/165—Combined use of TCP and UDP protocols; selection criteria therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/677—Multiple interfaces, e.g. multihomed nodes
Definitions
- the present invention relates generally to communications networks and more particularly to a method and apparatus for IP work group routing which provides host mobility, conserves on the assignment of IP subnet addresses, and adds security along with ease of use to network configuration.
- the original IP addressing scheme assigned a unique 32-bit internet address to each physical network and required gateways to keep routing tables proportional to the number of networks in the internet.
- This scheme is acceptable for an internet with tens of networks and hundreds of hosts, but can not handle today's connected internet with tens of thousands of small networks of personal computers because: (1) immense administrative overhead is required merely to manage network addresses; (2) the routing tables and gateways are extremely large; and (3) the number of IP addresses available for assignment is dwindling.
- the problem was how to minimize the number of assigned network addresses without destroying the original addressing scheme. See C. D. Comer, “Internetworking With TCP/IP, Vol. 1, Principals, Protocols and Architecture,” Prentice Hall, Englewood Cliffs, N.J., 2nd ed., Chap. 16, pp. 265-280 (1991).
- FIG. 1A taken from Comer, p. 270
- a site uses a single class B network address 128.10.0.0 for two physical networks.
- gateway G all gateways in the internet route as if there were a single physical net.
- the manager of the local site has chosen to use the third octet of the address to distinguish between the two physical networks.
- G examines the third octet of the destination address and routes datagrams with value 1 to the network labeled 128.10.1.0 and those with value 2 to the network labeled 128.10.2.0.
- subnetting divides the address into an internet portion and a local portion, where the internet portion identifies a site, and the local portion identifies a physical network and a host on that physical network.
- Another change is that a site using subnet addressing must choose a 32-bit subnet mask for each network. Bits in the subnet mask are set to 1 if the network treats the corresponding bit in the IP address as part of the network address, and 0 if it treats the bit as part of the host identifier. It is recommended that sites use contiguous subnet masks (i.e., setting contiguous bits to 1) and that they use the same mask throughout an entire set of physical networks that share an IP address.
- the standard IP routing algorithm is also modified to work with subnet addresses, known as “subnet routing.”
- the standard algorithm bases its decision on a table of routes, each table entry containing a pair of:
- the network address field specifies the IP address of the destination network, N
- the next hop address field specifies the address of a gateway to which datagrams destined for N should be sent.
- the standard routing algorithm compares the network portion of a destination address to the network address field of each entry in the routing table until a match is found. Because the next hop address field is constrained to specify a machine that is reachable over a directly connected network, only one table look-up is needed.
- the modified algorithm for subnet routing maintains one additional field in each table entry that specifies the subnet mask for use with that entry:
- the modified algorithm When choosing routes, the modified algorithm performs a bit-wise Boolean “AND” of the full 32-bit destination IP address and the subnet mask, and then checks to see if the result equals the value in the network address field. If so, it routes the datagram to the address specified in the next hop address field. If the IP address of the destination network (extracted from the datagram) matches a directly connected network address, the destination IP address from the datagram is resolved to a physical address, the datagram is encapsulated, and the frame sent out on the destination network to the destination host.
- the present invention is a method and apparatus for routing datagrams from a source node to a destination node in an IP communications network, the network including routers having multiple router interfaces connecting multiple physical networks.
- the method includes the step of assigning multiple router interfaces to a same IP work group address. This enhances host mobility by allowing, in one embodiment, a host to be relocated anywhere in the work group without requiring reconfiguration of the host.
- the method further includes the option of specifying (i.e., limiting or locking) host address ranges to designated interfaces of the work group. This step enhances security by restricting the allowed host mobility within the work group.
- the method further includes the optional step of filtering (i.e., dropping) the datagram if at least one of the source and destination hosts does not reside on the designated interface of the IP work group.
- each router interface would have a unique IP address; in the present invention, multiple interfaces are assigned the same IP address.
- the hosts and physical networks connected to the designated multiple interfaces are referred to as a “work group”.
- Another advantage is that it enables a network administrator to configure a network such that host addresses are allocated in blocks mirroring the physical structure of the network. For example, the administrator might allocate a contiguous block of addresses to each physical network. By providing a block or range of addresses, room is provided for future growth. In addition, one can secure the operational behavior of the network along the same lines as the configuration.
- Security is optionally enhanced by only allowing transmission of datagrams to or from hosts with certain addresses.
- IP network layer
- MAC physical layer
- a level of security is assigned to each IP work group by identifying the hosts within the group as “free”, i.e., permitting forwarding to/from any interface, or “secured”, i.e., permitting forwarding to/from only if the host resides on a designated interface.
- Hosts may be secured by range or singly; in the latter case the host's physical address may also be secured.
- FastPath Another feature of this invention which speeds the forwarding procedure is referred to as “FastPath”. If a datagram's source and destination addresses are both within the same work group, then header and address validation may be skipped.
- FIG. 1A is a schematic illustration of a gateway G connecting two physical networks to the rest of the internet, and illustrating the prior art IP subnet addressing scheme.
- FIG. 1B illustrates, in the top portion, the original IP addressing scheme in which a 32-bit class B IP address is considered to have a 2-octet internet portion and a 2-octet local portion; in the bottom portion, a modified IP subnet addressing scheme is illustrated in which a 2-octet internet part identifies a site, and a 2-octet local part is divided into two parts, one part identifying a physical network (subnet) and a second part identifying a host on that subnet.
- subnet physical network
- FIG. 2 is a schematic illustration of a router, with multiple interfaces connected to different physical networks and another interface connected to the rest of the internet.
- FIG. 3 illustrates a Definition table according to one embodiment of the invention.
- FIG. 4 illustrates an Interface table according to one embodiment of the invention.
- FIG. 5 illustrates a Range table according to one embodiment of the invention.
- FIG. 6 illustrates a Host table according to one embodiment of the invention.
- FIG. 7 illustrates service and forwarding methods of distributed autonomous forwarding engines.
- FIGS. 8 a - 8 g are a series of flow diagrams illustrating the forwarding of data packets in accordance with one embodiment of the invention.
- FIG. 9 shows a general purpose computer and memory for implementing the invention.
- ARP Address Resolution Protocol
- ARP is only across a single physical network and is limited to networks that support hardware broadcast.
- directed broadcast address An IP address that specifies “all hosts” on a specific network. A single copy of a directed broadcast is routed to the specified network where it is broadcast to all machines on that network.
- gateway A special purpose, dedicated computer that attaches to two or more networks and routes packets from one to the other.
- IP gateway routes IP datagrams among the networks to which it connects. Gateways route packets to other gateways until they can be delivered to the final destination directly on one physical network.
- the term is loosely applied to any machine that transfers information from one network to another, as in mail gateway.
- Host Any (end-user) computer system that connects to a network. Hosts range in size from personal computers to supercomputers. Also see gateway.
- ICMP Internet Control Message Protocol
- ICMP also includes an echo request/reply used to test whether a destination is reachable and responding.
- Internet Physically, a collection of packet switching networks interconnected by gateways along with protocols that allow them to function logically as a single, large, virtual network.
- Internet refers specifically to the connected Internet and the TCP/IP protocols it uses.
- Internet The collection of networks and gateways, including the MILNET and NSFNET, that use the TCP/IP protocol suite and function as a single, cooperative virtual network.
- the Internet provides universal connectivity and three levels of network services; unreliable, connectionless packet delivery; reliable, full duplex stream delivery; and application level services like electronic mail that build on the first two.
- the Internet reaches many universities, government research labs, and military installations and over a dozen countries.
- IP Internet Protocol
- IP IP standard protocol that defines the IP datagram as the unit of information passed across an internet and provides the basis for connectionless, best-effort packet delivery service.
- IP includes the ICMP control and error message protocol as an integral part.
- the entire protocol suite is often referred to as TCP/IP because TCP and IP are the two most fundamental protocols.
- IP address The 32-bit address assigned to hosts that want to participate in a TCP/IP internet. IP addresses are the abstraction of physical networks. Actually assigned to the interconnection of a host to a physical network, an IP address consists of a network portion and a host portion. The partition makes routing efficient.
- IP datagram The basic unit of information passed across a TCP/IP internet.
- An IP datagram is to an internet as a hardware packet is to a physical network. It contains a source and destination address along with data.
- MIB Management Information Base
- MIB-II refers to an industry-standard extended management database that contains variables common to the configuration of network devices.
- packet The unit of data sent across a packet switching network. The term is used loosely. While some TCP/IP literature uses it to refer specifically to data sent across a physical network, other literature views an entire TCP/IP internet as a packet switching network and describes IP datagrams as packets.
- proxy ARP The technique in which one machine, usually a gateway, answers ARP requests intended for another by supplying its own physical address. By pretending to be another machine, the gateway accepts responsibility for routing packets to it.
- route In general, a route is the path that network traffic takes from its source to its destination. In a TCP/IP internet, each IP datagram is routed separately; the route a datagram follows may include many gateways and many physical networks.
- router Generally, any machine responsible for making decisions about which of several paths network traffic will follow based on a network level address.
- the term refers specifically to an IP gateway that routes datagrams using IP destination addresses.
- each IP gateway is a router because it uses IP destination addresses to choose routes.
- SNMP Simple Network Monitoring Protocol
- MIB MIB
- subnet address An extension of the IP addressing scheme that allows a site to use a single IP network address for multiple physical networks. Outside of the site using subnet addressing, routing continues as usual by dividing the destination address into a network portion and local portion. Gateways and hosts inside a site use subnet addressing to interpret the local portion of the address by dividing it into a physical network portion and host portion.
- FIG. 2 illustrates a multi-interface router 11 for connecting several physical networks to an IP internet
- the router 11 includes multiple interfaces 12 A, 12 B, each of which connects to a physical network 13 A, 13 B including one or more hosts 14 .
- the router further includes an interface 15 which connects to the rest of the internet 16 .
- each of the interfaces 12 would have a unique IP address; in the present invention, both interfaces 12 are assigned the same IP address.
- the hosts 14 and networks 13 connected to both interfaces 12 are referred to as a “work group”.
- An IP work group contains the managed objects used to set up and configure the IP router interfaces (ports) into associations known as work groups. Each work group is a subnet with one address and security level shared by the associated interfaces.
- the configuration of IP work groups is done through four tables: Definition, Interface, Range, and Host.
- the first three are configuration tables and the fourth is a read-only status table.
- Each configuration table's key begins with “ID”, the work group identifier.
- These tables are implemented as AVL binary trees; a tree does not have a predefined size and may grow freely.
- Prior art management routines are used to allow network management to set entries and retrieve them from the tables in serial order in support of the Simple Network Management Protocol (SNMP).
- SNMP Simple Network Management Protocol
- Definition table 30 (FIG. 3): each entry defines a work group and assigns each work group a Host Address 32 and Subnet Mask 33 and a Security level.
- Interface table 40 (FIG. 4): each entry associates an interface (defined by IfIndex 42 ) to a work group.
- Range table 50 (FIG. 5): each entry locks a range of host addresses (BegAddress 52 to EndAd dress 53 ) to an interface of a work group.
- Host table 60 (FIG. 6): each entry lists the active (i.e., discovered) hosts (Host Address 61 ) along with their associated interface and physical address.
- the Definition table 30 includes an ID field 31 which identifies by an integer a separate work group in each row.
- the work group is assigned a Host Address (field 32 ) and a Subnet Mask (field 33 ) which together (logical AND) define the subnet (IP subnet address) for a given work group, e.g., for work group “ 1 ”, the subnet is 134.141.40.0.
- the Security field 34 sets the level of security for the work group.
- Security means the filtering of packet forwarding through the Range table 50 (FIG. 5). Hosts may be secured by range or singly. Four levels of security are provided:
- low—host may be free or secured in the range table
- medium host must be secured, by range or singly;
- the FastPath field 35 designates whether this service is enabled or disabled. If enabled, it speeds up the forwarding of packets within a work group (i.e., both source and destination in the same work group) by skipping IP header and address validation. If disabled, IP header and address validation are performed.
- the RowStatus field 36 is defined in the context of the SNMPv 2 textual convention.
- the three readable states are:
- RowStatus is a status object used to administrate conceptual rows in the work group tables defined above (FIGS. 3 - 6 ). It is an integer used here in an SNMPv 1 MIB, but intended to have the same semantics as the RowStatus textual convention for SNMPv 2 .
- RowStatus is used to manage the creation and deletion of conceptual rows, and has six defined values:
- createAndGo set to create a row in active status
- createAndWait set to create a row in either notReady or notInService status
- the first three values are states which may be retrieved by a management protocol get operation.
- the last three values are actions—they may be written, but not read. All values except “notReady” may be specified in a set operation. For example, to temporarily disable a row, set status to “notInService” and reactivate it later by a set to “active”. The agent alone determines “notReady” status. If a row was created by a set of “createAndWait” and the agent has enough row information from instance and default values to complete the row, this status will be set to “notInService”, or else to “notReady”.
- the OperStatus field 37 defines the operational status of a work group definition entry.
- the four states are:
- subnetConflict conflict with IP address of another interface (existing active entry in this work group definition table).
- the NumActiveInt field 38 records the number of interfaces (ports) in this work group which have an operational status of “OK” in the interface table (FIG. 4).
- the NumTotalInt field 39 records the number of interfaces in this work group.
- FIG. 4 shows the Interface table 40 .
- An interface must be configured in the Interface table before before it can be entered into the work group.
- An interface entry is keyed by ID and IfIndex.
- the ID field 41 identifies the work group, e.g., FIG. 4 shows 2 workgroups: “ 1 ” and “ 43 ”.
- the IfIndex field 42 identifies the router interface by number; these numbers are defined in accordance with the MIB-II interfaces group.
- the NumActiveHosts field 43 (read only), identifies the number of hosts recently active on the interface, e.g., averaging over the cache age out interval.
- the NumKnownHosts field 44 identifies the number of hosts seen on the interface since the last reboot.
- the RowStatus field 45 is defined in accordance with the SNMPv 2 textual convention defined above.
- the OperStatus field 46 defines the operational status of this interface (port) entry.
- the seven states are:
- workgroupInvalid either there is no work group defined for this entry or the operational status of the work group in the definition table is not OK;
- addressConflict there is a conflict of the work group address with an address configured in the IP address table
- routingDown routing or forwarding has been administratively disabled
- FIG. 5 illustrates the Range table.
- the Range table 50 configures host IP address ranges, assigning them to an existing interface for a designated work group.
- a range entry is keyed by ID 51 , BegAddress 52 , EndAddress 53 and IfIndex 54 .
- Entries in the same work group may not have overlapping host address ranges, but may have duplicate ranges if for different interfaces (e.g., see the first two entries in table 50 with same address range).
- BegAddress and EndAddress define the beginning and end of the address range, respectively.
- BegAddress and EndAddress may be the same, so that a range comprises a single host.
- Single host entries allow for a physical address to be configured in the PhysAddr field 55 . In a “high” security work group, such as work group “ 43 ”, all entries must be single hosts and must have the physical address configured as well to be valid.
- the address range must lie within the subnet defined for a given work group and thus the entry acquires the security level of that work group. If security is violated, packets to and from a given host IP address will be filtered out by the router.
- the source and destination IP packet addresses are checked against ranges in the Range table during packet forwarding and must match as follows:
- a host For a high security workgroup, a host must match a single host range entry—it must reside on the port with the physical address as configured in that entry. For a medium security workgroup, a host must match a range entry in that it resides on that port, but unless a physical address is also specified in that entry, the physical address is not constrained.
- a host is free to reside on any port with any physical address as long as its IP address does not lie within the range of any entry in the range table, but if it does fall in a range then it must completely match that entry, or another entry with the duplicate range. Match completely means match the port and, if a physical address is specified, match that as well.
- the RowStatus field 56 is defined the same as in the Interface table.
- the OperStitus field 57 defines the operational status of this range table entry.
- workgroupInvalid no work group or the operational status for the work group in the Definition table is not OK
- interfaceInvalid interface is not in the Interface table or operational status of interface entry is not OK
- physAddrRequired security level of associated work group is high and no physical address has been specified
- FIG. 6 illustrates the Host table.
- the Host table 60 is read only, and is similar to the MIBII Net-to-Media Table, except there are no static entries.
- the entries in the Host table are not configured; rather, they are learned and show only hosts active on the network. Each entry is keyed by HostAddress 61 and IfIndex 62 , which may be helpful if the network is misconfigured. For example, if two hosts on different interfaces are assigned the same IP address, both entries would show and the problem could then be corrected.
- the HostAddress field 62 identifies the IP address of the host.
- the IfIndex field 63 defines the interface number.
- the ID field 63 identifies the work group by integer.
- the PhysAddr field 64 identifies the physical MAC address of the host.
- the HostStatus field 65 may have one of the following states:
- invalid-physAddr the host matched an entry in the Range table with respect to range and interface, but did not match that entry for physical address; if the work group is high security, this status would result if no physical address was given in the range entry;
- invalid-workgroup the work group does not exist or is not in service in the Definition table
- FIG. 7 illustrates a distributed router architecture for forwarding unicast IP packets across router interfaces. It places an IP FAS (forwarding service) agent, on each interface, rather than having a single centralized forwarding agent.
- IP FAS forwarding service
- the distributed FAS agent architecture utilized in the present embodiment is more fully described in copending and commonly owned U.S. Pat. No. 08/216,541 entitled “Distributed Autonomous Object Architecture For Network Layer Routing,” filed Mar. 22, 1994 by Kurt Dobbins et al., which is hereby incorporated by reference in its entirety.
- the distributed object architecture of that application which is implemented in an object-oriented programming language such as C++, defines all of the router's functional aspects in a common protocol-independent framework which is inherited by every protocol-specific object upon instantiation.
- object-oriented programming the data and methods are united into objects, each of which represents an instance of some class, and which classes are members of a hierarchy of classes united via inheritance relationships.
- each router interface 111 , 114 , 117 has a forwarding engine 112 , 115 , 118 sitting on it, and each forwarding engine knows how to receive and transmit packets on its own interface.
- Each forwarding engine accesses a common forwarding table (FIB) 120 .
- the host interface 117 is treated as an internal interface with a destination address for “local” delivery into the host CPU.
- Each forwarding engine has its own data portion 113 , 116 , 119 that is specific to itself, e.g., interface and media information, address resolution tables, configuration information, etc. However, the method portion 112 , 115 and 118 of each engine is common and is shared by all similar engines. The specific goal of each forwarding engine is to provide for the reception, processing and forwarding of network layer packets. At a very high level, all forwarding engines perform the same basic tasks regardless of protocol or media.
- the operation of the forwarding engine will now be described with regard to FIG. 7.
- the service routine validates the IP header and IP addresses, filters against any access list, and then looks up the destination address in the forwarding information base (FIB) to find a route.
- a route gives: (a) the outgoing interface; (b) the outgoing FAS, and if the destination is not directly connected to that interface; (c) the next hop router. If there is a valid route the service routine passes the packet to the forward routine of the outgoing FAS.
- the forward routine of the outgoing FAS filters against its access list if any, and then tries to resolve the destination IP address or next hop to a physical address suitable for framing by looking in the ARP (address resolution protocol) cache associated with that interface. If the address is resolved the packet is transmitted to that physical address. Otherwise, the packet is deferred on an ARP entry queue and ARP tries to resolve the address through protocol request. If resolved, the deferred packet is dequeued and transmitted by the FAS.
- ARP address resolution protocol
- a cache of packet forwarding history is kept by each FAS, keyed by destination and source IP addresses. Address validation, access control filtering and look-up of next hop check the cache first, and if an entry is found there, the method is quick. If at any stage an error occurs in forwarding, the packet is dropped and an ICMP control message is sent back to the source.
- Work group routing in accordance with the present invention extends the previously defined forwarding procedure for unicast packet forwarding and for limited broadcast packet forwarding.
- the existing procedure is sufficient for subnet broadcast and multicast packets.
- proxy ARP is activated for all work group interfaces.
- Snooping if activated in the enterprise MIB, is a function by which the interface will monitor ARP communication on its physical network, in order to determine IP addresses and physical addresses of hosts. With snooping active, the router is able to load the work group active Host table (FIG. 6) more quickly.
- FIB lookup is extended when a work group is implemented. All interfaces of a work group are represented in the FIB by a single route. If this is the route chosen when a packet is looked up in the FIB, the packet is delivered to a special work group FAS which consults the Host table. If a valid entry exists for that destination in the Host table, the packet is passed to the interface FAS given by that entry.
- ARP requests are resolved, a visible entry with the resolved interface number and physical address is put in the Host table, the hidden entry is removed, and the deferred packet is dequeued and passed to the forward routine of the respective interface FAS to be transmitted. Future packets with the same source and destination IP addresses are handled by the FAS forwarding history caches on the normal forwarding path.
- FIGS. 8 a - 8 g A more detailed flow chart of the forwarding method is illustrated in FIGS. 8 a - 8 g and will now be described.
- Interface- 1 and interface- 2 are both configured as belonging to a valid work group in the Definition table 30 and are operationally active in the Interface table 40 .
- the WG Cache 215 is part of the Host Table 60 .
- Source host 201 on interface- 1 wants to send an IP packet to destination host 202 on interface- 2 . Both hosts belong to the same work group subnet, but the IP packet cannot be sent directly because host 201 does not know the physical address of host 202 . Host 201 therefore initiates an ARP Request attempting to resolve the IP address of host 202 to a physical address. This request is not received by host 202 because it is on a different physical network link. It is received by router 11 however, because ARP Requests are broadcast on a link.
- ARP-FAS- 1 206 receives the ARP request on interface- 1 and checks with WG cache 215 to determine the status of the destination. Since the destination host 202 is unknown, WG FAS 214 is called to initiate a flood of ARP requests out all interfaces in this work group.
- the destination host 202 receiving an ARP Request for its physical address, responds with an ARP Reply to the request source, i.e. the router 11 .
- the router receives the Reply via interface- 2 driver 204 , stores the physical address in the ARP Cache 212 , and passes the interface number and physical address to WG Cache 215 .
- the WG Cache validates the information against user-configured entries in the Range table 216 and sets the status (valid or invalid) for the destination host accordingly. This status in the WG Cache entry is visible through the Host table.
- ARP requests are tried multiple times according to the standard implementation of the ARP protocol, the source host 201 sends a second ARP Request for destination 202 .
- ARP FAS- 1 206 checks with the WG Cache 215 for the destination host, it finds the host is valid on interface- 2 .
- ARP-FAS- 1 then does a proxy ARP Reply to source host 201 pretending to be destination host 202 .
- Host 201 having received the ARP Reply, sends the IP packet to the physical address of the router.
- Interface- 1 driver 203 gives the packet to IP FAS- 1 205 which attempts to forward the packet.
- IP FAS- 1 205 which attempts to forward the packet.
- the FIB holds a route to the WG FAS for the work group subnet, so this information is returned through the cache to IP FAS- 1 which forwards the packet to the WG FAS 214 .
- WG FAS 214 consults the WG Cache 215 , finds that the destination host 202 is valid on interface- 2 and passes the packet over to IP FAS- 2 207 . It also updates the IP Cache- 1 209 with the information so that future IP packets from host 201 to host 202 can go directly to IP FAS- 2 . IP FAS- 2 207 finally sends the packet out through interface- 2 driver 204 to host 202 .
- Source host 201 continues to send IP packets to destination host 202 . Because of the entry in IP Cache- 1 209 , these packets are directly forwarded to IP FAS- 2 207 .
- FAS cache is loaded from FIB upon cache miss call FORWARD routine of next FAS
- proxy and snooping are MIB settable.
- ARPRESOLVE routine in interface ARP Cache
- ARP cache s loaded by ARP protocol or static management via MIBII Net-to-Media Table.
- VALID host matches configuration in Range Table or not in Range Table but not High Security Work Group.
- INVALID host violates configuration in Range Table or not in Range Table and High Security Work Group.
- the above embodiments may be implemented in a general purpose computer 70 as shown in FIG. 9.
- This general purpose computer may include a Computer Processing Unit (CPU) 71 , memory 72 , a processing bus 73 by which the CPU can access the memory, and interface 74 to the rest of the router.
- the invention may be a memory 72 , such as a floppy disk, compact disk, or hard drive, that contains a computer program or data structure, for providing to a general purpose computer instructions and data for carrying out the functions of the previous embodiments.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Apparatus and method wherein multiple router interfaces are assigned the same IP network address, creating an IP work group. This enhances host mobility by allowing, in one embodiment, a host to be relocated anywhere in the work group without requiring reconfiguration of the host. As a further option, host address ranges may be specified (i.e., locked) to designated interfaces of the work group, to enhance security by restricting the allowed host mobility within the work group. An additional advantage is a reduced consumption of network and subnet addresses, because now a single address is used for several physical networks.
Description
- This application is a Continuation of prior application No: 09/073,557, filed on May 6, 1998, entitled INTERNET PROTOCOL (IP) WORK GROUP ROUTING, now Pending, which will issue on Jun. 19, 2001 as U.S. Pat. No. 6,249,820, which is a continuation of application serial no. 08/501,324 filed Jul. 12, 1995 entitled INTERNET PROTOCOL (IP) WORK GROUP ROUTING, now issued as U.S. Pat. No. 5,751,971 on May 12, 1998, and is incorporated by reference herein in its entirety.
- The present invention relates generally to communications networks and more particularly to a method and apparatus for IP work group routing which provides host mobility, conserves on the assignment of IP subnet addresses, and adds security along with ease of use to network configuration.
- The original IP addressing scheme assigned a unique 32-bit internet address to each physical network and required gateways to keep routing tables proportional to the number of networks in the internet. This scheme is acceptable for an internet with tens of networks and hundreds of hosts, but can not handle today's connected internet with tens of thousands of small networks of personal computers because: (1) immense administrative overhead is required merely to manage network addresses; (2) the routing tables and gateways are extremely large; and (3) the number of IP addresses available for assignment is dwindling. Thus, the problem was how to minimize the number of assigned network addresses without destroying the original addressing scheme. See C. D. Comer, “Internetworking With TCP/IP, Vol. 1, Principals, Protocols and Architecture,” Prentice Hall, Englewood Cliffs, N.J., 2nd ed., Chap. 16, pp. 265-280 (1991).
- A prior art technique for allowing a single network address to span multiple physical networks, and now a required part of IP addressing, is “subnet addressing” or “subnetting.” This is illustrated by example in FIG. 1A (taken from Comer, p. 270), wherein a site uses a single class B network address 128.10.0.0 for two physical networks. Except for gateway G, all gateways in the internet route as if there were a single physical net. Once a packet reaches G, it must be sent across the correct physical network to its destination. In this case, the manager of the local site has chosen to use the third octet of the address to distinguish between the two physical networks. Thus, G examines the third octet of the destination address and routes datagrams with
value 1 to the network labeled 128.10.1.0 and those withvalue 2 to the network labeled 128.10.2.0. - Adding subnets only changes the interpretation of IP addresses slightly, as illustrated in FIG. 1B. Instead of dividing the 32-bit IP address into a network prefix and a host suffix, subnetting divides the address into an internet portion and a local portion, where the internet portion identifies a site, and the local portion identifies a physical network and a host on that physical network.
- Another change is that a site using subnet addressing must choose a 32-bit subnet mask for each network. Bits in the subnet mask are set to 1 if the network treats the corresponding bit in the IP address as part of the network address, and 0 if it treats the bit as part of the host identifier. It is recommended that sites use contiguous subnet masks (i.e., setting contiguous bits to 1) and that they use the same mask throughout an entire set of physical networks that share an IP address.
- The standard IP routing algorithm is also modified to work with subnet addresses, known as “subnet routing.” The standard algorithm bases its decision on a table of routes, each table entry containing a pair of:
- (network address, next hop address)
- where the network address field specifies the IP address of the destination network, N, and the next hop address field specifies the address of a gateway to which datagrams destined for N should be sent. The standard routing algorithm compares the network portion of a destination address to the network address field of each entry in the routing table until a match is found. Because the next hop address field is constrained to specify a machine that is reachable over a directly connected network, only one table look-up is needed.
- The modified algorithm for subnet routing maintains one additional field in each table entry that specifies the subnet mask for use with that entry:
- (subnet mask, network address, next hop address)
- When choosing routes, the modified algorithm performs a bit-wise Boolean “AND” of the full 32-bit destination IP address and the subnet mask, and then checks to see if the result equals the value in the network address field. If so, it routes the datagram to the address specified in the next hop address field. If the IP address of the destination network (extracted from the datagram) matches a directly connected network address, the destination IP address from the datagram is resolved to a physical address, the datagram is encapsulated, and the frame sent out on the destination network to the destination host.
- With ever increasing numbers of subnets, it would be desirable if further methods were available to conserve on subnet addresses. One potential method for doing this would be to put a bridge on a single router interface to bridge multiple LAN segments; however, this involves the added cost of a bridge and loses the protection of router “fire walls”, which administrators set to filter out packets based on destination addresses. Another potential method would be to increase the granularity of subnets by taking more bits from the host portion of the IP address for the subnet mask; however, this approach is very difficult for the network administrator to maintain as the network configuration evolves. Thus, neither of these potential methods offers a satisfactory solution.
- It is an object of the present invention to accomplish one or more of: increased host mobility; further conserve on the assignment of network addresses; simplify the configuration of subnets; and provide an enhanced level of security.
- The present invention is a method and apparatus for routing datagrams from a source node to a destination node in an IP communications network, the network including routers having multiple router interfaces connecting multiple physical networks. The method includes the step of assigning multiple router interfaces to a same IP work group address. This enhances host mobility by allowing, in one embodiment, a host to be relocated anywhere in the work group without requiring reconfiguration of the host. The method further includes the option of specifying (i.e., limiting or locking) host address ranges to designated interfaces of the work group. This step enhances security by restricting the allowed host mobility within the work group. The method further includes the optional step of filtering (i.e., dropping) the datagram if at least one of the source and destination hosts does not reside on the designated interface of the IP work group.
- In the prior art, each router interface would have a unique IP address; in the present invention, multiple interfaces are assigned the same IP address. The hosts and physical networks connected to the designated multiple interfaces are referred to as a “work group”. There are several advantages to this arrangement.
- First, there is the advantage of host mobility within the work group. A designated host may be valid if physically located on any one of the several interfaces in the work group. Another advantage is a reduced consumption of network and subnet addresses, because now a single address is used for several physical networks. As a result, the administrative burden of servicing physical networks with several addresses is reduced.
- Another advantage is that it enables a network administrator to configure a network such that host addresses are allocated in blocks mirroring the physical structure of the network. For example, the administrator might allocate a contiguous block of addresses to each physical network. By providing a block or range of addresses, room is provided for future growth. In addition, one can secure the operational behavior of the network along the same lines as the configuration.
- Security is optionally enhanced by only allowing transmission of datagrams to or from hosts with certain addresses. By locking IP (network layer) and MAC (physical layer) addresses, no one (other than the network administrator) can reconfigure an IP address to another MAC address. As a result, unauthorized computers which connect to a network will not be able to transmit datagrams into or out of the work group.
- For example, in one embodiment a level of security is assigned to each IP work group by identifying the hosts within the group as “free”, i.e., permitting forwarding to/from any interface, or “secured”, i.e., permitting forwarding to/from only if the host resides on a designated interface. Hosts may be secured by range or singly; in the latter case the host's physical address may also be secured.
- Another feature of this invention which speeds the forwarding procedure is referred to as “FastPath”. If a datagram's source and destination addresses are both within the same work group, then header and address validation may be skipped.
- These and other benefits and features of the present invention will be more particularly described with respect to the following detailed description and drawings.
- FIG. 1A is a schematic illustration of a gateway G connecting two physical networks to the rest of the internet, and illustrating the prior art IP subnet addressing scheme.
- FIG. 1B illustrates, in the top portion, the original IP addressing scheme in which a 32-bit class B IP address is considered to have a 2-octet internet portion and a 2-octet local portion; in the bottom portion, a modified IP subnet addressing scheme is illustrated in which a 2-octet internet part identifies a site, and a 2-octet local part is divided into two parts, one part identifying a physical network (subnet) and a second part identifying a host on that subnet.
- FIG. 2 is a schematic illustration of a router, with multiple interfaces connected to different physical networks and another interface connected to the rest of the internet.
- FIG. 3 illustrates a Definition table according to one embodiment of the invention.
- FIG. 4 illustrates an Interface table according to one embodiment of the invention.
- FIG. 5 illustrates a Range table according to one embodiment of the invention.
- FIG. 6 illustrates a Host table according to one embodiment of the invention.
- FIG. 7 illustrates service and forwarding methods of distributed autonomous forwarding engines.
- FIGS. 8a-8 g are a series of flow diagrams illustrating the forwarding of data packets in accordance with one embodiment of the invention.
- FIG. 9 shows a general purpose computer and memory for implementing the invention.
- The following definitions are useful in understanding the present invention (taken from D. Comer, pp. 477-511):
- ARP: (Address Resolution Protocol) The TCP/IP protocol used to dynamically bind a high level IP address to a low-level physical hardware address. ARP is only across a single physical network and is limited to networks that support hardware broadcast.
- directed broadcast address: An IP address that specifies “all hosts” on a specific network. A single copy of a directed broadcast is routed to the specified network where it is broadcast to all machines on that network.
- gateway: A special purpose, dedicated computer that attaches to two or more networks and routes packets from one to the other. In particular, an IP gateway routes IP datagrams among the networks to which it connects. Gateways route packets to other gateways until they can be delivered to the final destination directly on one physical network. The term is loosely applied to any machine that transfers information from one network to another, as in mail gateway. Although the original literature used the term gateway, vendors often call them IP routers.
- Host: Any (end-user) computer system that connects to a network. Hosts range in size from personal computers to supercomputers. Also see gateway.
- ICMP: (Internet Control Message Protocol) An integral part of the Internet Protocol that handles error and control messages. Specifically, gateways and hosts use ICMP to send reports of problems about datagrams back to the original source that sent the datagram. ICMP also includes an echo request/reply used to test whether a destination is reachable and responding.
- Internet: Physically, a collection of packet switching networks interconnected by gateways along with protocols that allow them to function logically as a single, large, virtual network. When written in upper case, Internet refers specifically to the connected Internet and the TCP/IP protocols it uses.
- Internet: The collection of networks and gateways, including the MILNET and NSFNET, that use the TCP/IP protocol suite and function as a single, cooperative virtual network. The Internet provides universal connectivity and three levels of network services; unreliable, connectionless packet delivery; reliable, full duplex stream delivery; and application level services like electronic mail that build on the first two. The Internet reaches many universities, government research labs, and military installations and over a dozen countries.
- IP: (Internet Protocol) The TCP/IP standard protocol that defines the IP datagram as the unit of information passed across an internet and provides the basis for connectionless, best-effort packet delivery service. IP includes the ICMP control and error message protocol as an integral part. The entire protocol suite is often referred to as TCP/IP because TCP and IP are the two most fundamental protocols.
- IP address: The 32-bit address assigned to hosts that want to participate in a TCP/IP internet. IP addresses are the abstraction of physical networks. Actually assigned to the interconnection of a host to a physical network, an IP address consists of a network portion and a host portion. The partition makes routing efficient.
- IP datagram: The basic unit of information passed across a TCP/IP internet. An IP datagram is to an internet as a hardware packet is to a physical network. It contains a source and destination address along with data.
- MIB: (Management Information Base) The set of variables (database) that a gateway running CMOT or SNMP maintains. Managers can fetch or store into these variables. MIB-II refers to an industry-standard extended management database that contains variables common to the configuration of network devices.
- packet: The unit of data sent across a packet switching network. The term is used loosely. While some TCP/IP literature uses it to refer specifically to data sent across a physical network, other literature views an entire TCP/IP internet as a packet switching network and describes IP datagrams as packets.
- proxy ARP: The technique in which one machine, usually a gateway, answers ARP requests intended for another by supplying its own physical address. By pretending to be another machine, the gateway accepts responsibility for routing packets to it.
- route: In general, a route is the path that network traffic takes from its source to its destination. In a TCP/IP internet, each IP datagram is routed separately; the route a datagram follows may include many gateways and many physical networks.
- router: Generally, any machine responsible for making decisions about which of several paths network traffic will follow based on a network level address. When used with TCP/IP, the term refers specifically to an IP gateway that routes datagrams using IP destination addresses. In a TCP/IP internet, each IP gateway is a router because it uses IP destination addresses to choose routes.
- SNMP: (Simple Network Monitoring Protocol) A standard protocol used to monitor IP gateways and the networks to which they attach. SNMP defines a set of variables that the gateway must keep and specifies that all operations on the gateway are a side-effect of fetching or storing to the data variables. Also see MIB.
- subnet address: An extension of the IP addressing scheme that allows a site to use a single IP network address for multiple physical networks. Outside of the site using subnet addressing, routing continues as usual by dividing the destination address into a network portion and local portion. Gateways and hosts inside a site use subnet addressing to interpret the local portion of the address by dividing it into a physical network portion and host portion.
- FIG. 2 illustrates a
multi-interface router 11 for connecting several physical networks to an IP internet Therouter 11 includesmultiple interfaces physical network interface 15 which connects to the rest of theinternet 16. - In the prior art, each of the
interfaces 12 would have a unique IP address; in the present invention, bothinterfaces 12 are assigned the same IP address. Thehosts 14 and networks 13 connected to bothinterfaces 12 are referred to as a “work group”. - An IP work group contains the managed objects used to set up and configure the IP router interfaces (ports) into associations known as work groups. Each work group is a subnet with one address and security level shared by the associated interfaces.
- In a specific embodiment described herein, the configuration of IP work groups is done through four tables: Definition, Interface, Range, and Host. The first three are configuration tables and the fourth is a read-only status table. Each configuration table's key begins with “ID”, the work group identifier. These tables are implemented as AVL binary trees; a tree does not have a predefined size and may grow freely. Prior art management routines are used to allow network management to set entries and retrieve them from the tables in serial order in support of the Simple Network Management Protocol (SNMP).
- The four tables provide the following functions, described in more detail below:
- Definition table30 (FIG. 3): each entry defines a work group and assigns each work group a
Host Address 32 and Subnet Mask 33 and a Security level. - Interface table40 (FIG. 4): each entry associates an interface (defined by IfIndex 42) to a work group.
- Range table50 (FIG. 5): each entry locks a range of host addresses (
BegAddress 52 to EndAd dress 53) to an interface of a work group. - Host table60 (FIG. 6): each entry lists the active (i.e., discovered) hosts (Host Address 61) along with their associated interface and physical address.
- Referring to FIG. 3, the Definition table30 includes an
ID field 31 which identifies by an integer a separate work group in each row. For a given row, the work group is assigned a Host Address (field 32) and a Subnet Mask (field 33) which together (logical AND) define the subnet (IP subnet address) for a given work group, e.g., for work group “1”, the subnet is 134.141.40.0. - The
Security field 34 sets the level of security for the work group. Security means the filtering of packet forwarding through the Range table 50 (FIG. 5). Hosts may be secured by range or singly. Four levels of security are provided: - none—all hosts are free and the range table is not consulted in packet forwarding;
- low—host may be free or secured in the range table;
- medium—host must be secured, by range or singly;
- high—host must be secured singly, with physical address also configured.
- The FastPath field35 designates whether this service is enabled or disabled. If enabled, it speeds up the forwarding of packets within a work group (i.e., both source and destination in the same work group) by skipping IP header and address validation. If disabled, IP header and address validation are performed.
- The
RowStatus field 36 is defined in the context of the SNMPv2 textual convention. The three readable states are: - active—work group entry is active and usable by the router;
- notinservice—entry is fully defined but administratively inactive;
- notready—entry is not yet fully defined (e.g., workgroup “5” still requires a mask).
- A work group not in the Definition table, or in the Definition table but with a RowStatus marked “notready,” cannot be used as a key in creating entries in the Interface and Range tables.
- RowStatus is a status object used to administrate conceptual rows in the work group tables defined above (FIGS.3-6). It is an integer used here in an SNMPv1 MIB, but intended to have the same semantics as the RowStatus textual convention for SNMPv2.
- RowStatus is used to manage the creation and deletion of conceptual rows, and has six defined values:
- active—usable by the managed device;
- notInService—unusable, row information complete;
- notReady—unusable, row information incomplete;
- createAndGo—set to create a row in active status;
- createAndWait—set to create a row in either notReady or notInService status;
- destroy—set to delete existing row.
- The first three values are states which may be retrieved by a management protocol get operation. The last three values are actions—they may be written, but not read. All values except “notReady” may be specified in a set operation. For example, to temporarily disable a row, set status to “notInService” and reactivate it later by a set to “active”. The agent alone determines “notReady” status. If a row was created by a set of “createAndWait” and the agent has enough row information from instance and default values to complete the row, this status will be set to “notInService”, or else to “notReady”.
- The
OperStatus field 37 defines the operational status of a work group definition entry. The four states are: - ok—operational work group;
- disabled—row status is not active;
- subnetConflict—conflict with IP address of another interface (existing active entry in this work group definition table);
- internalError—system problem, e.g., out of memory.
- The
NumActiveInt field 38 records the number of interfaces (ports) in this work group which have an operational status of “OK” in the interface table (FIG. 4). - The
NumTotalInt field 39 records the number of interfaces in this work group. - FIG. 4 shows the Interface table40. An interface must be configured in the Interface table before before it can be entered into the work group. An interface entry is keyed by ID and IfIndex.
- The ID field41 identifies the work group, e.g., FIG. 4
shows 2 workgroups: “1” and “43”. - The
IfIndex field 42 identifies the router interface by number; these numbers are defined in accordance with the MIB-II interfaces group. - The NumActiveHosts field43 (read only), identifies the number of hosts recently active on the interface, e.g., averaging over the cache age out interval.
- The
NumKnownHosts field 44 identifies the number of hosts seen on the interface since the last reboot. - The
RowStatus field 45 is defined in accordance with the SNMPv2 textual convention defined above. - The
OperStatus field 46 defines the operational status of this interface (port) entry. The seven states are: - ok—entry is operational
- disabled—this entry's row status is not active;
- workgroupInvalid—either there is no work group defined for this entry or the operational status of the work group in the definition table is not OK;
- addressConflict—there is a conflict of the work group address with an address configured in the IP address table;
- resetRequired—no conflict, this entry's row status has just been activated, and a reset of the router is required to be operationally OK;
- linkDown—no physical connections on this interface;
- routingDown—routing or forwarding has been administratively disabled
- internalError—unspecified internal problems.
- FIG. 5 illustrates the Range table. The Range table50 configures host IP address ranges, assigning them to an existing interface for a designated work group. A range entry is keyed by
ID 51,BegAddress 52,EndAddress 53 andIfIndex 54. - Entries in the same work group (ID) may not have overlapping host address ranges, but may have duplicate ranges if for different interfaces (e.g., see the first two entries in table50 with same address range). BegAddress and EndAddress define the beginning and end of the address range, respectively. BegAddress and EndAddress may be the same, so that a range comprises a single host. Single host entries allow for a physical address to be configured in the
PhysAddr field 55. In a “high” security work group, such as work group “43”, all entries must be single hosts and must have the physical address configured as well to be valid. - More specifically, the address range must lie within the subnet defined for a given work group and thus the entry acquires the security level of that work group. If security is violated, packets to and from a given host IP address will be filtered out by the router. The source and destination IP packet addresses are checked against ranges in the Range table during packet forwarding and must match as follows:
- For a high security workgroup, a host must match a single host range entry—it must reside on the port with the physical address as configured in that entry. For a medium security workgroup, a host must match a range entry in that it resides on that port, but unless a physical address is also specified in that entry, the physical address is not constrained.
- For a low security workgroup, a host is free to reside on any port with any physical address as long as its IP address does not lie within the range of any entry in the range table, but if it does fall in a range then it must completely match that entry, or another entry with the duplicate range. Match completely means match the port and, if a physical address is specified, match that as well. The
RowStatus field 56 is defined the same as in the Interface table. The OperStitus field 57 defines the operational status of this range table entry. - The following states apply:
- ok—entry is operational
- disabled—this entry's row status is not active;
- workgroupInvalid—no work group or the operational status for the work group in the Definition table is not OK;
- interfaceInvalid—interface is not in the Interface table or operational status of interface entry is not OK;
- physAddrRequired—security level of associated work group is high and no physical address has been specified;
- internalError—system problem
- FIG. 6 illustrates the Host table. The Host table60 is read only, and is similar to the MIBII Net-to-Media Table, except there are no static entries.
- The entries in the Host table are not configured; rather, they are learned and show only hosts active on the network. Each entry is keyed by
HostAddress 61 andIfIndex 62, which may be helpful if the network is misconfigured. For example, if two hosts on different interfaces are assigned the same IP address, both entries would show and the problem could then be corrected. - The
HostAddress field 62 identifies the IP address of the host. TheIfIndex field 63 defines the interface number. TheID field 63 identifies the work group by integer. ThePhysAddr field 64 identifies the physical MAC address of the host. - The
HostStatus field 65 may have one of the following states: - other, unknown,
- or valid—the entry is valid for forwarding; the host may be unknown if ARP has not discovered on which interface it resides;
- invalid-multiple—the same host IP address was later found duplicated on another interface;
- invalid-physAddr—the host matched an entry in the Range table with respect to range and interface, but did not match that entry for physical address; if the work group is high security, this status would result if no physical address was given in the range entry;
- invalid-range—in a high or medium security work group, the host was not in the range of any entry in the Range table, or it was not in the range of an entry with a matching interface;
- invalid-interface—the interface was physically down or not in service in the Interface table;
- invalid-workgroup—the work group does not exist or is not in service in the Definition table;
- invalid-expired—the host became inactive and aged out on the interface on which it was learned.
- FIG. 7 illustrates a distributed router architecture for forwarding unicast IP packets across router interfaces. It places an IP FAS (forwarding service) agent, on each interface, rather than having a single centralized forwarding agent. The distributed FAS agent architecture utilized in the present embodiment is more fully described in copending and commonly owned U.S. Pat. No. 08/216,541 entitled “Distributed Autonomous Object Architecture For Network Layer Routing,” filed Mar. 22, 1994 by Kurt Dobbins et al., which is hereby incorporated by reference in its entirety. The distributed object architecture of that application, which is implemented in an object-oriented programming language such as C++, defines all of the router's functional aspects in a common protocol-independent framework which is inherited by every protocol-specific object upon instantiation. In object-oriented programming, the data and methods are united into objects, each of which represents an instance of some class, and which classes are members of a hierarchy of classes united via inheritance relationships.
- As illustrated in FIG. 7, each
router interface forwarding engine host interface 117 is treated as an internal interface with a destination address for “local” delivery into the host CPU. - Each forwarding engine has its
own data portion method portion - The operation of the forwarding engine will now be described with regard to FIG. 7. When an IP packet arrives, physically addressed to router interface-1, it is delivered to that FAS's service routine. The service routine validates the IP header and IP addresses, filters against any access list, and then looks up the destination address in the forwarding information base (FIB) to find a route. A route gives: (a) the outgoing interface; (b) the outgoing FAS, and if the destination is not directly connected to that interface; (c) the next hop router. If there is a valid route the service routine passes the packet to the forward routine of the outgoing FAS.
- The forward routine of the outgoing FAS filters against its access list if any, and then tries to resolve the destination IP address or next hop to a physical address suitable for framing by looking in the ARP (address resolution protocol) cache associated with that interface. If the address is resolved the packet is transmitted to that physical address. Otherwise, the packet is deferred on an ARP entry queue and ARP tries to resolve the address through protocol request. If resolved, the deferred packet is dequeued and transmitted by the FAS.
- A cache of packet forwarding history is kept by each FAS, keyed by destination and source IP addresses. Address validation, access control filtering and look-up of next hop check the cache first, and if an entry is found there, the method is quick. If at any stage an error occurs in forwarding, the packet is dropped and an ICMP control message is sent back to the source.
- Work group routing in accordance with the present invention extends the previously defined forwarding procedure for unicast packet forwarding and for limited broadcast packet forwarding. The existing procedure is sufficient for subnet broadcast and multicast packets.
- First of all, proxy ARP is activated for all work group interfaces. Snooping, if activated in the enterprise MIB, is a function by which the interface will monitor ARP communication on its physical network, in order to determine IP addresses and physical addresses of hosts. With snooping active, the router is able to load the work group active Host table (FIG. 6) more quickly.
- If a packet's source and destination addresses are both within a single work group, and if FastPath is s elected in the Definition table for that work group, then header and address validation may be skipped. This speeds up packet forwarding.
- FIB lookup is extended when a work group is implemented. All interfaces of a work group are represented in the FIB by a single route. If this is the route chosen when a packet is looked up in the FIB, the packet is delivered to a special work group FAS which consults the Host table. If a valid entry exists for that destination in the Host table, the packet is passed to the interface FAS given by that entry.
- There is a work group FAS created for each work group, which performs relay functions. If a packet arrives at the work group FAS for a host address unknown to the Host table, it creates a temporary, hidden entry in the Host table. The packet is deferred on a queue held with that Host table entry. ARP requests are flooded out to each work group interface in the Interface table, in order to locate the physical address of the destination host.
- If ARP requests are resolved, a visible entry with the resolved interface number and physical address is put in the Host table, the hidden entry is removed, and the deferred packet is dequeued and passed to the forward routine of the respective interface FAS to be transmitted. Future packets with the same source and destination IP addresses are handled by the FAS forwarding history caches on the normal forwarding path.
- A more detailed flow chart of the forwarding method is illustrated in FIGS. 8a-8 g and will now be described.
- Interface-1 and interface-2 are both configured as belonging to a valid work group in the Definition table 30 and are operationally active in the Interface table 40. The
WG Cache 215 is part of the Host Table 60. -
Source host 201 on interface-1 wants to send an IP packet todestination host 202 on interface-2. Both hosts belong to the same work group subnet, but the IP packet cannot be sent directly becausehost 201 does not know the physical address ofhost 202. Host 201 therefore initiates an ARP Request attempting to resolve the IP address ofhost 202 to a physical address. This request is not received byhost 202 because it is on a different physical network link. It is received byrouter 11 however, because ARP Requests are broadcast on a link. - ARP-FAS-1 206 receives the ARP request on interface-1 and checks with
WG cache 215 to determine the status of the destination. Since thedestination host 202 is unknown,WG FAS 214 is called to initiate a flood of ARP requests out all interfaces in this work group. - Reference FIG. 8b
- The
destination host 202, receiving an ARP Request for its physical address, responds with an ARP Reply to the request source, i.e. therouter 11. The router receives the Reply via interface-2driver 204, stores the physical address in theARP Cache 212, and passes the interface number and physical address toWG Cache 215. The WG Cache validates the information against user-configured entries in the Range table 216 and sets the status (valid or invalid) for the destination host accordingly. This status in the WG Cache entry is visible through the Host table. - Since ARP requests are tried multiple times according to the standard implementation of the ARP protocol, the
source host 201 sends a second ARP Request fordestination 202. This time, when ARP FAS-1 206 checks with theWG Cache 215 for the destination host, it finds the host is valid on interface-2. ARP-FAS-1 then does a proxy ARP Reply to sourcehost 201 pretending to bedestination host 202. - Host201 having received the ARP Reply, sends the IP packet to the physical address of the router. Interface-1
driver 203 gives the packet to IP FAS-1 205 which attempts to forward the packet. First it checks IP Cache-1 209 for a next hop FAS, but the destination is unknown in this cache so this cache checks with theFIB 213. The FIB holds a route to the WG FAS for the work group subnet, so this information is returned through the cache to IP FAS-1 which forwards the packet to theWG FAS 214. -
WG FAS 214 consults theWG Cache 215, finds that thedestination host 202 is valid on interface-2 and passes the packet over to IP FAS-2 207. It also updates the IP Cache-1 209 with the information so that future IP packets fromhost 201 to host 202 can go directly to IP FAS-2. IP FAS-2 207 finally sends the packet out through interface-2driver 204 to host 202. -
Source host 201 continues to send IP packets todestination host 202. Because of the entry in IP Cache-1 209, these packets are directly forwarded to IP FAS-2 207. - Eventually the entry in the IP Cache-1 209 ages out. Now these packets force IP FAS-1 205 to consult the
FIB 213 and forward them instead to theWG FAS 214. The WG FAS tries to find the host in theWG Cache 215. In the case of the WG Cache entry having aged out, the packets are deferred in the WG Cache while the WG FAS again floods out ARP requests on all interfaces in the workgroup. (FIG. 8d previously described the case of the entry still being in the WG Cache.) - An ARP Reply is finally received from
host 202 and the WG Cache entry is relearned, theWG Cache 215 validates the host status with the Range Table 216, and since thehost 202 is valid oninterface 2, theWG Cache 215 forwards the deferred packets through IP FAS-2 207. - Pseudo code of several routines for implementing this embodiment is set forth below:
- _ _ _ _ _ _
- SERVICE routine of receiving interface FAS
- if (Work Group FAS and FASTPATH):
- skip IP header validation; else:
- check version, length, check sum and time to live IP header fields;
- check for martian addresses;
- do Access List Control filter check;
- lookup next hop in FAS cache;
- returns next IP address and next FAS
- FAS cache is loaded from FIB upon cache miss call FORWARD routine of next FAS
- this could be in Work Group FAS or an Interface FAS.
- FORWARD routine of Work Group FAS
- call find host to lookup in Work Group Cache of Host Table;
- if (INVALID):
- consume IP packet;
- if (VALID):
- update FAS cache on receiving interface for next hop Interface FAS;
- call FORWARD routine of next hop Interface FAS;
- if (UNKNOWN):
- packet was deferred in host cache
- flood ARP requests out all interfaces in this Work Group
- for (each interface in this work group) call ARPPRIME.
- FORWARD routine of forwarding Interface FAS
- do Access List Control filter check;
- call ARPRESOLVE to map IP to physical address, pass in packet;
- if (NOT DEFERRED):
- send out IP packet done.
- for Work Group, proxy ARP and snooping enabled;
- for non Work Group, proxy and snooping are MIB settable.
- SERVICE routine of receiving interface ARP FAS
- if (snooping or
- packet is addressed to one of the router's IP addresses or proxy is enabled and the PROXY TEST returns OK):
- call ARPSET routine to cache source host from packet;
- if (REQUEST packet addressed to Router or proxy OK):
- send arp REPLY to source address in packet done.
- PROXY TEST routine of interface ARP Agent
- if (not Work Group interface):
- if (FIB has a route with next hop not on subnet of receiving interface):
- return proxy OK;
- else: return proxy NOTOK;
- if (Work Group interface):
- call FIND HOST in Work Group Cache;
- if (INVALID) or host found on receiving interface):
- return proxy NOTOK;
- if (VALID on different interface) return proxy OK.
- if (UNKNOWN) call ARPPRIME on every interface in this work group and return proxy NOTOK
- ARPSET routine in interface ARP Cache:
- lookup entry in arp cache with packet's source IP;
- cache the new physical address from source field in received packet;
- if (arp entry was WAITING):
- send out deferred IP packets;
- if (Work Group Interface):
- call LEARN HOST, pass configuration;
- will cache source host from the ARP packet return
- ARPPRIME routine in interface ARP Cache:
- lookup entry in arp cache with packet's source IP;
- if (not found): set as new entry;
- if (not already on retry queue):
- put on retry queue;
- will retry ARP REQUESTs
- broadcast out arp REQUEST on interface;
- set arp entry status WAITING. return
- ARPRESOLVE routine in interface ARP Cache:
- ARP cache s loaded by ARP protocol or static management via MIBII Net-to-Media Table.
- lookup host IP address in arp cache;
- if (not found):
- set as new entry with status WAITING;
- if (WAITING):
- defer packet on arp entry packet queue;
- if (not already on retry queue):
- put on retry queue;
- broadcast out arp REQUEST on interface;
- return DEFERRED;
- if (RESOLVED):
- return OK, and physical address.
- FIND HOST routine of Work Group Cache:
- Configuration =interface and physical address.
- Host entries in cache having Range Status field with values:
- VALID—host matches configuration in Range Table or not in Range Table but not High Security Work Group.
- INVALID—host violates configuration in Range Table or not in Range Table and High Security Work Group.
- NOT SET—host configuration not yet resolved by arp or host aged out on age queue.
- lookup host entry in Work Group Cache of Host Table;
- if (not found):
- set new entry for host IP address in cache;
- set entry's Range Status to NOT SET;
- check host entry's Range Status;
- if (INVALID):
- tell source (via ICMP) that packet was administratively filtered;
- return INVALID;
- if (VALID):
- return VALID and host interface FAS;
- if (NOT SET):
- defer IP packet on packet queue of host entry;
- return UNKNOWN.
- LEARN HOST routine in Work Group Cache:
- Configuration, interface and physical address, is passed in lookup host entry in Work Group Cache of Host Table.
- if (not in cache):
- create new entry;
- if (packet configuration not equal to host entry configuration):
- set new con figuration in entry;
- call VALIDATE HOST in Range Table to get Range Status;
- if (VALID): send deferred packets to source address;
- if (INVALID): flush deferred packets;
- set host entry status to Range Status from Range Table;
- set host entry age queue status to YOUNG.
- Cache entries age with a keepalive attempt,
- age out in less than 10 minutes if not active) return
- VALIDATE HOST routine in Range Table
- lookup host in Range Table;
- if (host not in Range Table):
- return INVALID if High Security Work Group, else return VALID;
- if (host found in Range Table):
- compare range entry configuration to packet configuration;
- if (configuration matches): return VALID;
- else return INVALID.
- _ _ _ _ _ _
- The above embodiments may be implemented in a
general purpose computer 70 as shown in FIG. 9. This general purpose computer may include a Computer Processing Unit (CPU) 71,memory 72, aprocessing bus 73 by which the CPU can access the memory, andinterface 74 to the rest of the router. Alternatively, the invention may be amemory 72, such as a floppy disk, compact disk, or hard drive, that contains a computer program or data structure, for providing to a general purpose computer instructions and data for carrying out the functions of the previous embodiments. - Having thus described a particular embodiment of the invention, various modifications will readily occur to those skilled in the art which are intended to be within the scope of this invention. Accordingly, the foregoing description is by way of example only, and not intended to be limiting.
Claims (25)
1. A method of routing datagrams from a source to a destination in an IP communications network including routers having multiple router interfaces connecting multiple physical networks, wherein the routers forward IP datagrams based upon IP addresses, the method comprising the steps of:
defining an IP work group by assigning multiple router interfaces to a same IP work group address; and
forwarding IP datagrams through the routers based on the IP work group address.
2. The method of claim 1 further comprising:
specifying IP host address ranges for different router interfaces; and
filtering IP datagrams based on the host address ranges.
3. The method of claim 1 , wherein if an IP datagram contains source and destination host addresses within the same IP work group, forwarding the datagram without performing header and address validation.
4. The method of claim 1 , further including configuring a forwarding information base (FIB) with a route for the IP work group.
5. The method of claim 1 , further comprising assigning a security level to the IP work group by identifying hosts within the group as “free” in order to permit forwarding to/from any interface, or “secured” in order to permit forwarding to/from a designated interface.
6. The method of claim 5 , wherein four levels of security are provided:
in a “low” security work group, a host with any physical address is free to reside on any interface as long as its IP address does not lie within specified host address ranges, but if it does fall in any one of the ranges then it must reside on a designated interface for that one range;
in a “medium” security work group, a host's IP address must fall within a specified host address range for a designated interface, but unless a physical address is also specified, the physical address is not constrained;
in a “high” security work group, a host must have a specified host IP address for a designated interlace and have a designated physical address; and
in a “none” security work group, all hosts are free.
7. The method of claim 6 , wherein a range table is maintained with the specified host address ranges and their designated interfaces.
8. A method of providing security in an IP communications network include routers having multiple router interfaces connecting multiple physical networks, wherein the routers forward IP datagrams based on IP addresses, the method comprising the steps of:
defining an IP work group by specifying IP host address ranges for different router interfaces; and
filtering IP datagrams based on the host address ranges.
9. The method of claim 8 , wherein the defining step includes specifying an IP host address range for a single physical address.
10. The method of claim 8 , wherein the defining step includes specifying multiple host address ranges which include the same IP host address to different router interfaces.
11. A method of increasing host mobility in an IP communications network including multiple physical networks connected by routers having multiple router interfaces, wherein the routers forward IP datagrams based upon IP addresses, the method comprising the steps of:
defining an IP work group by assigning multiple router interfaces to a same IP work group address and forwarding IP datagrams based on the IP work group address, and wherein a host is attachable to any interface in the IP work group without requiring reconfiguration of the host IP address.
12. The method of claim 11 , including maintaining a host table of IP host addresses and their associated interfaces.
13. The method of claim 12 , further comprising reviewing the host table for duplicate IP host addresses and associated interfaces.
14. The method of claim 11 , further comprising maintaining a count of known interfaces within the work group.
15. The method of claim 11 , further comprising monitoring the hosts heard on each interface and maintaining a host table of IP host addresses and associated interfaces on which each host is heard.
16. The method of claim 11 , wherein the host table is maintained as a cache memory accessible by each router interface.
17. The method of claim 11 , further comprising:
providing a work group forwarding agent for each work group.
18. The method of claim 17 , further comprising:
maintaining a host table of IP host addresses and their associated interfaces; and
wherein the work group forwarding agent, prior to forwarding a datagram, accesses the host table for the associated interface.
19. The method of claim 11 , wherein:
the work group forwarding agent sends ARP requests to all interfaces in the work group to resolve an unknown host physical address.
20. The method of claim 19 , further comprising:
providing an ARP forwarding agent at each interface of the router, which accesses the host table.
21. The method of claim 11 , further comprising:
maintaining a range table of host IP addresses and associated interfaces on which the hosts may reside; and
prior to forwarding a datagram, accessing the range table to validate a source or destination host.
22. An IP communications network including multiple physical networks connected by routers having multiple router interfaces, the routers forwarding IP datagrams based upon IP addresses, the network providing increased host mobility and including:
means for defining an IP work group by assigning multiple router interfaces to a same IP work group address; and
means for forwarding IP datagrams based on the IP work group address, wherein a host is attachable to any interface in the IP work group without requiring reconfiguration of the host IP address.
23. An IP communications network including routers having multiple router interfaces connecting multiple physical networks, the routers forwarding IP datagrams based on IP addresses, the network providing enhanced security and including:
means for defining an IP work group by specifying IP host address ranges for different router interfaces; and
means for filtering IP datagrams based on the host address ranges.
24. A router that provides security for preventing unauthorized transmissions comprising:
a first interface connectable to a first network;
means for assigning a range of valid IP host addresses to the first interface; and
means for forwarding only IP datagrams transmitted from a host on the first network having a host IP address within the range of valid host addresses.
25. An apparatus for assigning a plurality of interfaces on an IP communications network to a work group, comprising:
means for defining an IP work group by assigning an IP workgroup address to a plurality of interfaces;
means for configuring interfaces to the IP work group;
means for configuring ranges of IP host addresses to associated interfaces of the IP work group; and
means for filtering IP datagrams based upon the host address ranges.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/882,275 US20020029288A1 (en) | 1995-07-12 | 2001-06-15 | Internet protocol (IP) work group routing |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/501,324 US5751971A (en) | 1995-07-12 | 1995-07-12 | Internet protocol (IP) work group routing |
US09/073,557 US6249820B1 (en) | 1995-07-12 | 1998-05-06 | Internet protocol (IP) work group routing |
US09/882,275 US20020029288A1 (en) | 1995-07-12 | 2001-06-15 | Internet protocol (IP) work group routing |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/073,557 Continuation US6249820B1 (en) | 1995-07-12 | 1998-05-06 | Internet protocol (IP) work group routing |
Publications (1)
Publication Number | Publication Date |
---|---|
US20020029288A1 true US20020029288A1 (en) | 2002-03-07 |
Family
ID=23993060
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/501,324 Expired - Lifetime US5751971A (en) | 1995-07-12 | 1995-07-12 | Internet protocol (IP) work group routing |
US09/073,557 Expired - Lifetime US6249820B1 (en) | 1995-07-12 | 1998-05-06 | Internet protocol (IP) work group routing |
US09/882,275 Abandoned US20020029288A1 (en) | 1995-07-12 | 2001-06-15 | Internet protocol (IP) work group routing |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/501,324 Expired - Lifetime US5751971A (en) | 1995-07-12 | 1995-07-12 | Internet protocol (IP) work group routing |
US09/073,557 Expired - Lifetime US6249820B1 (en) | 1995-07-12 | 1998-05-06 | Internet protocol (IP) work group routing |
Country Status (3)
Country | Link |
---|---|
US (3) | US5751971A (en) |
AU (1) | AU6545396A (en) |
WO (1) | WO1997002734A2 (en) |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097361A1 (en) * | 1997-07-07 | 2002-07-25 | Ham Yong Sung | In-plane switching mode liquid crystal display device |
US20030072318A1 (en) * | 2001-09-14 | 2003-04-17 | Nokia Inc. | System and method for packet forwarding |
US20030076854A1 (en) * | 2000-01-10 | 2003-04-24 | Mudhar Parminder S | Communications network |
US20030217283A1 (en) * | 2002-05-20 | 2003-11-20 | Scott Hrastar | Method and system for encrypted network management and intrusion detection |
US20030219008A1 (en) * | 2002-05-20 | 2003-11-27 | Scott Hrastar | System and method for wireless lan dynamic channel change with honeypot trap |
US20030233567A1 (en) * | 2002-05-20 | 2003-12-18 | Lynn Michael T. | Method and system for actively defending a wireless LAN against attacks |
US20030236990A1 (en) * | 2002-05-20 | 2003-12-25 | Scott Hrastar | Systems and methods for network security |
US20040098610A1 (en) * | 2002-06-03 | 2004-05-20 | Hrastar Scott E. | Systems and methods for automated network policy exception detection and correction |
US20040186913A1 (en) * | 2001-08-29 | 2004-09-23 | Jinsong Xie | Calling method for node across zones in ip network system |
US20040203764A1 (en) * | 2002-06-03 | 2004-10-14 | Scott Hrastar | Methods and systems for identifying nodes and mapping their locations |
US20040210654A1 (en) * | 2003-04-21 | 2004-10-21 | Hrastar Scott E. | Systems and methods for determining wireless network topology |
US20040209617A1 (en) * | 2003-04-21 | 2004-10-21 | Hrastar Scott E. | Systems and methods for wireless network site survey systems and methods |
US20040209634A1 (en) * | 2003-04-21 | 2004-10-21 | Hrastar Scott E. | Systems and methods for adaptively scanning for wireless communications |
US20040218602A1 (en) * | 2003-04-21 | 2004-11-04 | Hrastar Scott E. | Systems and methods for dynamic sensor discovery and selection |
US20050177646A1 (en) * | 2003-03-28 | 2005-08-11 | Sony Corporation | Network system and communication method, and information processing apparatus, method and program |
US20060015635A1 (en) * | 2004-06-17 | 2006-01-19 | International Business Machines Corporation | Method and apparatus for handling address resolution protocol requests for a device having multiple interfaces |
US20060085543A1 (en) * | 2004-10-19 | 2006-04-20 | Airdefense, Inc. | Personal wireless monitoring agent |
US20060123133A1 (en) * | 2004-10-19 | 2006-06-08 | Hrastar Scott E | Detecting unauthorized wireless devices on a wired network |
US20070220250A1 (en) * | 2006-03-14 | 2007-09-20 | Hiroshi Tamura | Network apparatus, ipsec setting method therein, and computer-readable recording medium storing a control program for executing the method |
US20070218874A1 (en) * | 2006-03-17 | 2007-09-20 | Airdefense, Inc. | Systems and Methods For Wireless Network Forensics |
US20070217371A1 (en) * | 2006-03-17 | 2007-09-20 | Airdefense, Inc. | Systems and Methods for Wireless Security Using Distributed Collaboration of Wireless Clients |
US7277404B2 (en) | 2002-05-20 | 2007-10-02 | Airdefense, Inc. | System and method for sensing wireless LAN activity |
US7301945B1 (en) * | 1999-10-12 | 2007-11-27 | Alcatel | Device and method to compress destination addresses of a multicast message |
US20080052779A1 (en) * | 2006-08-11 | 2008-02-28 | Airdefense, Inc. | Methods and Systems For Wired Equivalent Privacy and Wi-Fi Protected Access Protection |
US7355996B2 (en) | 2004-02-06 | 2008-04-08 | Airdefense, Inc. | Systems and methods for adaptive monitoring with bandwidth constraints |
US20090021343A1 (en) * | 2006-05-10 | 2009-01-22 | Airdefense, Inc. | RFID Intrusion Protection System and Methods |
US7532895B2 (en) | 2002-05-20 | 2009-05-12 | Air Defense, Inc. | Systems and methods for adaptive location tracking |
US7577424B2 (en) | 2005-12-19 | 2009-08-18 | Airdefense, Inc. | Systems and methods for wireless vulnerability analysis |
US7715800B2 (en) | 2006-01-13 | 2010-05-11 | Airdefense, Inc. | Systems and methods for wireless intrusion detection using spectral analysis |
US7970013B2 (en) | 2006-06-16 | 2011-06-28 | Airdefense, Inc. | Systems and methods for wireless network content filtering |
US8244916B1 (en) * | 2002-02-14 | 2012-08-14 | Marvell International Ltd. | Method and apparatus for enabling a network interface to support multiple networks |
Families Citing this family (228)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6883034B1 (en) * | 1995-06-23 | 2005-04-19 | Cisco Technology, Inc. | Method of resolving conflicts in access control lists in router by comparing elements in the lists based on subsumption relations |
US5751971A (en) * | 1995-07-12 | 1998-05-12 | Cabletron Systems, Inc. | Internet protocol (IP) work group routing |
US6625662B1 (en) * | 1995-10-04 | 2003-09-23 | Kawasaki Microelectronics, Inc. | Inter-network connecting device |
US6230203B1 (en) | 1995-10-20 | 2001-05-08 | Scientific-Atlanta, Inc. | System and method for providing statistics for flexible billing in a cable environment |
US5966163A (en) | 1995-10-20 | 1999-10-12 | Scientific-Atlanta, Inc. | Providing constant bit rate upstream data transport in a two way cable system by scheduling preemptive grants for upstream data slots using selected fields of a plurality of grant fields |
US6064671A (en) * | 1995-12-08 | 2000-05-16 | Killian; Michael G. | Multi-homed end system for increasing computers network bandwidth |
US6058429A (en) * | 1995-12-08 | 2000-05-02 | Nortel Networks Corporation | Method and apparatus for forwarding traffic between locality attached networks using level 3 addressing information |
CA2216533C (en) * | 1995-12-19 | 2002-05-07 | Motorola, Inc. | Method and apparatus for rate governing communications |
US5845087A (en) * | 1996-03-04 | 1998-12-01 | Telebit Corporation | Internetwork zone name filtering with selective placebo zone name substitution in a response to a request for zone name information |
US7028088B1 (en) * | 1996-04-03 | 2006-04-11 | Scientific-Atlanta, Inc. | System and method for providing statistics for flexible billing in a cable environment |
CN1198426C (en) * | 1996-04-04 | 2005-04-20 | 松下通信系统设备株式会社 | Facsimile communication method and facsimile |
US6182139B1 (en) * | 1996-08-05 | 2001-01-30 | Resonate Inc. | Client-side resource-based load-balancing with delayed-resource-binding using TCP state migration to WWW server farm |
JPH10145574A (en) * | 1996-11-11 | 1998-05-29 | Matsushita Electric Ind Co Ltd | Facsimile equipment |
US5959974A (en) * | 1996-12-02 | 1999-09-28 | International Business Machines Corporation | System and method for discovering path MTU of internet paths |
US20060195595A1 (en) | 2003-12-19 | 2006-08-31 | Mendez Daniel J | System and method for globally and securely accessing unified information in a computer network |
US6272150B1 (en) | 1997-01-17 | 2001-08-07 | Scientific-Atlanta, Inc. | Cable modem map display for network management of a cable data delivery system |
US6324267B1 (en) | 1997-01-17 | 2001-11-27 | Scientific-Atlanta, Inc. | Two-tiered authorization and authentication for a cable data delivery system |
US5892922A (en) * | 1997-02-28 | 1999-04-06 | 3Com Corporation | Virtual local area network memory access system |
US6006267A (en) * | 1997-03-06 | 1999-12-21 | International Business Machines Corp. | Method and system for connecting network hosts having different communication protocols |
ES2290986T3 (en) * | 1997-03-12 | 2008-02-16 | Nomadix, Inc. | NAME TRANSMITTER OR ROUTER. |
US6130892A (en) * | 1997-03-12 | 2000-10-10 | Nomadix, Inc. | Nomadic translator or router |
US6286058B1 (en) | 1997-04-14 | 2001-09-04 | Scientific-Atlanta, Inc. | Apparatus and methods for automatically rerouting packets in the event of a link failure |
US5987523A (en) * | 1997-06-04 | 1999-11-16 | International Business Machines Corporation | Applet redirection for controlled access to non-orginating hosts |
US6049528A (en) | 1997-06-30 | 2000-04-11 | Sun Microsystems, Inc. | Trunking ethernet-compatible networks |
US6044087A (en) | 1997-06-30 | 2000-03-28 | Sun Microsystems, Inc. | Interface for a highly integrated ethernet network element |
US6246680B1 (en) | 1997-06-30 | 2001-06-12 | Sun Microsystems, Inc. | Highly integrated multi-layer switch element architecture |
US6115378A (en) * | 1997-06-30 | 2000-09-05 | Sun Microsystems, Inc. | Multi-layer distributed network element |
US6016310A (en) | 1997-06-30 | 2000-01-18 | Sun Microsystems, Inc. | Trunking support in a high performance network device |
US6128666A (en) * | 1997-06-30 | 2000-10-03 | Sun Microsystems, Inc. | Distributed VLAN mechanism for packet field replacement in a multi-layered switched network element using a control field/signal for indicating modification of a packet with a database search engine |
US6094435A (en) | 1997-06-30 | 2000-07-25 | Sun Microsystems, Inc. | System and method for a quality of service in a multi-layer network element |
US6044418A (en) | 1997-06-30 | 2000-03-28 | Sun Microsystems, Inc. | Method and apparatus for dynamically resizing queues utilizing programmable partition pointers |
US6081512A (en) | 1997-06-30 | 2000-06-27 | Sun Microsystems, Inc. | Spanning tree support in a high performance network device |
US6119196A (en) | 1997-06-30 | 2000-09-12 | Sun Microsystems, Inc. | System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates |
US6021132A (en) * | 1997-06-30 | 2000-02-01 | Sun Microsystems, Inc. | Shared memory management in a switched network element |
US6081522A (en) | 1997-06-30 | 2000-06-27 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US6088356A (en) | 1997-06-30 | 2000-07-11 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US6078590A (en) * | 1997-07-14 | 2000-06-20 | Cisco Technology, Inc. | Hierarchical routing knowledge for multicast packet routing |
JPH11184649A (en) * | 1997-07-25 | 1999-07-09 | Seiko Epson Corp | Printing system, method and printer |
US6212183B1 (en) * | 1997-08-22 | 2001-04-03 | Cisco Technology, Inc. | Multiple parallel packet routing lookup |
US6393407B1 (en) | 1997-09-11 | 2002-05-21 | Enliven, Inc. | Tracking user micro-interactions with web page advertising |
US6154775A (en) * | 1997-09-12 | 2000-11-28 | Lucent Technologies Inc. | Methods and apparatus for a computer network firewall with dynamic rule processing with the ability to dynamically alter the operations of rules |
US6170012B1 (en) * | 1997-09-12 | 2001-01-02 | Lucent Technologies Inc. | Methods and apparatus for a computer network firewall with cache query processing |
US6141749A (en) * | 1997-09-12 | 2000-10-31 | Lucent Technologies Inc. | Methods and apparatus for a computer network firewall with stateful packet filtering |
US7143438B1 (en) | 1997-09-12 | 2006-11-28 | Lucent Technologies Inc. | Methods and apparatus for a computer network firewall with multiple domain support |
US6098172A (en) * | 1997-09-12 | 2000-08-01 | Lucent Technologies Inc. | Methods and apparatus for a computer network firewall with proxy reflection |
US6240461B1 (en) * | 1997-09-25 | 2001-05-29 | Cisco Technology, Inc. | Methods and apparatus for caching network data traffic |
US6108652A (en) * | 1997-12-01 | 2000-08-22 | At&T Corp. | Multicast probability-base grouping of nodes in switched network for improved broadcast search |
US6356563B1 (en) * | 1998-12-29 | 2002-03-12 | At&T Corp. | Global addressing and identifier assignment in inter-worked networks |
US6718387B1 (en) * | 1997-12-10 | 2004-04-06 | Sun Microsystems, Inc. | Reallocating address spaces of a plurality of servers using a load balancing policy and a multicast channel |
US5941972A (en) * | 1997-12-31 | 1999-08-24 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
USRE42761E1 (en) | 1997-12-31 | 2011-09-27 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
GB2333670B (en) | 1998-01-19 | 2003-02-12 | Ericsson Telefon Ab L M | Address allocation |
US6006272A (en) * | 1998-02-23 | 1999-12-21 | Lucent Technologies Inc. | Method for network address translation |
US7450560B1 (en) | 1998-03-05 | 2008-11-11 | 3Com Corporation | Method for address mapping in a network access system and a network access device for use therewith |
US7032242B1 (en) | 1998-03-05 | 2006-04-18 | 3Com Corporation | Method and system for distributed network address translation with network security features |
FR2775804B1 (en) * | 1998-03-05 | 2000-04-14 | Alsthom Cge Alcatel | METHODS FOR STORING AND UNPACKING ATTRIBUTES OF AN OBJECT |
US6353614B1 (en) | 1998-03-05 | 2002-03-05 | 3Com Corporation | Method and protocol for distributed network address translation |
US6681327B1 (en) | 1998-04-02 | 2004-01-20 | Intel Corporation | Method and system for managing secure client-server transactions |
US7606936B2 (en) * | 1998-05-29 | 2009-10-20 | Research In Motion Limited | System and method for redirecting data to a wireless device over a plurality of communication paths |
US6219694B1 (en) | 1998-05-29 | 2001-04-17 | Research In Motion Limited | System and method for pushing information from a host system to a mobile data communication device having a shared electronic address |
US7209949B2 (en) | 1998-05-29 | 2007-04-24 | Research In Motion Limited | System and method for synchronizing information between a host system and a mobile data communication device |
US9374435B2 (en) | 1998-05-29 | 2016-06-21 | Blackberry Limited | System and method for using trigger events and a redirector flag to redirect messages |
US7266365B2 (en) * | 1998-05-29 | 2007-09-04 | Research In Motion Limited | System and method for delayed transmission of bundled command messages |
US6779019B1 (en) * | 1998-05-29 | 2004-08-17 | Research In Motion Limited | System and method for pushing information from a host system to a mobile data communication device |
US6463463B1 (en) | 1998-05-29 | 2002-10-08 | Research In Motion Limited | System and method for pushing calendar event messages from a host system to a mobile data communication device |
US8516055B2 (en) * | 1998-05-29 | 2013-08-20 | Research In Motion Limited | System and method for pushing information from a host system to a mobile data communication device in a wireless data network |
US20020049818A1 (en) * | 1998-05-29 | 2002-04-25 | Gilhuly Barry J. | System and method for pushing encrypted information between a host system and a mobile data communication device |
US7209955B1 (en) | 1998-05-29 | 2007-04-24 | Research In Motion Limited | Notification system and method for a mobile data communication device |
US6438585B2 (en) | 1998-05-29 | 2002-08-20 | Research In Motion Limited | System and method for redirecting message attachments between a host system and a mobile data communication device |
US6377990B1 (en) | 1998-06-15 | 2002-04-23 | Lodgenet Entertainment Corporation | System for providing internet access from locations different from those for which the user's software was configured |
US6370121B1 (en) | 1998-06-29 | 2002-04-09 | Cisco Technology, Inc. | Method and system for shortcut trunking of LAN bridges |
SE519523C2 (en) | 1998-06-30 | 2003-03-11 | Ericsson Telefon Ab L M | Mobile LAN where hosts connected to the LAN can perform packet data communication with hosts in external networks |
US6711152B1 (en) * | 1998-07-06 | 2004-03-23 | At&T Corp. | Routing over large clouds |
US6483811B1 (en) | 1998-08-04 | 2002-11-19 | Electronic Data Systems Corporation | System and method for emulating a distributed network |
US6388988B1 (en) | 1998-08-04 | 2002-05-14 | Electronic Data Systems Corporation | Method and system for automatic line protection switching of embedded channels |
US6330615B1 (en) * | 1998-09-14 | 2001-12-11 | International Business Machines Corporation | Method of using address resolution protocol for constructing data frame formats for multiple partitions host network interface communications |
US6330616B1 (en) * | 1998-09-14 | 2001-12-11 | International Business Machines Corporation | System for communications of multiple partitions employing host-network interface, and address resolution protocol for constructing data frame format according to client format |
US6334154B1 (en) * | 1998-09-14 | 2001-12-25 | International Business Machines Corporation | Article of manufacture for communications of multiple partitions employing host-network interface, and address resolution protocol for constructing data frame format according to client format |
US6470013B1 (en) | 1998-10-13 | 2002-10-22 | Cisco Technology, Inc. | Use of enhanced ethernet link—loop packets to automate configuration of intelligent linecards attached to a router |
US6385649B1 (en) * | 1998-11-06 | 2002-05-07 | Microsoft Corporation | Routers and methods for optimal routing table compression |
US8266266B2 (en) | 1998-12-08 | 2012-09-11 | Nomadix, Inc. | Systems and methods for providing dynamic network authorization, authentication and accounting |
US7194554B1 (en) | 1998-12-08 | 2007-03-20 | Nomadix, Inc. | Systems and methods for providing dynamic network authorization authentication and accounting |
US8713641B1 (en) | 1998-12-08 | 2014-04-29 | Nomadix, Inc. | Systems and methods for authorizing, authenticating and accounting users having transparent computer access to a network using a gateway device |
US6584096B1 (en) * | 1998-12-30 | 2003-06-24 | Nortel Networks Limited | Method and apparatus for connecting a home network to the internet |
US6401130B1 (en) * | 1999-01-08 | 2002-06-04 | Nortel Networks Limited | Auto aggregation method for IP prefix/length pairs |
US7123624B1 (en) * | 1999-01-14 | 2006-10-17 | Cape Range Wireless, Ltd. | System and method for single-point to fixed-multipoint data communication |
US6381638B1 (en) * | 1999-02-24 | 2002-04-30 | 3Com Corporation | System and method for options based address reuse |
US6397260B1 (en) * | 1999-03-08 | 2002-05-28 | 3Com Corporation | Automatic load sharing for network routers |
US6731642B1 (en) | 1999-05-03 | 2004-05-04 | 3Com Corporation | Internet telephony using network address translation |
US6487555B1 (en) * | 1999-05-07 | 2002-11-26 | Alta Vista Company | Method and apparatus for finding mirrored hosts by analyzing connectivity and IP addresses |
JP3764016B2 (en) * | 1999-05-10 | 2006-04-05 | 財団法人流通システム開発センタ− | Integrated IP transfer network |
US6480508B1 (en) | 1999-05-12 | 2002-11-12 | Westell, Inc. | Router-based domain name system proxy agent using address translation |
US6557044B1 (en) | 1999-06-01 | 2003-04-29 | Nortel Networks Limited | Method and apparatus for exchange of routing database information |
DE69938292T2 (en) | 1999-06-24 | 2009-03-12 | Alcatel Lucent | Internet forwarding process using OSPF protocol propagation, system and target computer for it |
US6751191B1 (en) | 1999-06-29 | 2004-06-15 | Cisco Technology, Inc. | Load sharing and redundancy scheme |
US6587434B1 (en) | 1999-08-10 | 2003-07-01 | Cirrus Logic, Inc | TCP/IP communications protocol |
US8190708B1 (en) | 1999-10-22 | 2012-05-29 | Nomadix, Inc. | Gateway device having an XML interface and associated method |
US6768743B1 (en) | 1999-10-26 | 2004-07-27 | 3Com Corporation | Method and system for address server redirection for multiple address networks |
US6781982B1 (en) | 1999-10-26 | 2004-08-24 | 3Com Corporation | Method and system for allocating persistent private network addresses between private networks |
US6708219B1 (en) | 1999-10-26 | 2004-03-16 | 3Com Corporation | Method and system for dual-network address utilization |
US6985576B1 (en) * | 1999-12-02 | 2006-01-10 | Worldcom, Inc. | Method and apparatus for automatic call distribution |
US7349979B1 (en) | 1999-12-02 | 2008-03-25 | Cisco Technology, Inc. | Method and apparatus for redirecting network traffic |
US6996621B1 (en) | 1999-12-07 | 2006-02-07 | 3Com Corporation | Method for supporting secondary address delivery on remote access servers |
US6618755B1 (en) * | 1999-12-07 | 2003-09-09 | Watchguard Technologies, Inc. | Automatically identifying subnetworks in a network |
JP3436906B2 (en) * | 1999-12-10 | 2003-08-18 | パナソニック コミュニケーションズ株式会社 | Error notification device and error notification method |
US6757281B1 (en) * | 1999-12-16 | 2004-06-29 | Xerox Corporation | Route server |
US6493341B1 (en) | 1999-12-31 | 2002-12-10 | Ragula Systems | Combining routers to increase concurrency and redundancy in external network access |
US6295276B1 (en) | 1999-12-31 | 2001-09-25 | Ragula Systems | Combining routers to increase concurrency and redundancy in external network access |
US20030016647A1 (en) * | 2000-01-13 | 2003-01-23 | Kenneth Margon | System and method for multipoint to multipoint data communication |
US7058007B1 (en) | 2000-01-18 | 2006-06-06 | Cisco Technology, Inc. | Method for a cable modem to rapidly switch to a backup CMTS |
US6839829B1 (en) | 2000-01-18 | 2005-01-04 | Cisco Technology, Inc. | Routing protocol based redundancy design for shared-access networks |
JP3731435B2 (en) * | 2000-02-09 | 2006-01-05 | 三菱電機株式会社 | Decision path control system and decision path control method |
US6694304B1 (en) * | 2000-02-17 | 2004-02-17 | Cisco Technology | System and method for retrieving network management table entries |
US7171492B1 (en) | 2000-02-24 | 2007-01-30 | Utstarcom, Inc. | Method and application programming interface for assigning multiple network addresses |
US6948074B1 (en) | 2000-03-09 | 2005-09-20 | 3Com Corporation | Method and system for distributed generation of unique random numbers for digital tokens |
US6732189B1 (en) * | 2000-03-20 | 2004-05-04 | International Business Machines Corporation | Method and apparatus for fault tolerant tunneling of multicast datagrams |
US7035934B1 (en) * | 2000-03-23 | 2006-04-25 | Verizon Corporate Services Group Inc. | System and method for improving traffic analysis and network modeling |
US6792474B1 (en) * | 2000-03-27 | 2004-09-14 | Cisco Technology, Inc. | Apparatus and methods for allocating addresses in a network |
US7301952B2 (en) | 2000-04-06 | 2007-11-27 | The Distribution Systems Research Institute | Terminal-to-terminal communication connection control method using IP transfer network |
EP2237580B1 (en) * | 2000-04-10 | 2013-01-09 | Research In Motion Limited | System and method for indicating the state of a message |
US6742044B1 (en) | 2000-05-10 | 2004-05-25 | Cisco Technology, Inc. | Distributed network traffic load balancing technique implemented without gateway router |
US6681258B1 (en) * | 2000-05-31 | 2004-01-20 | International Business Machines Corporation | Facility for retrieving data from a network adapter having a shared address resolution table |
US6839809B1 (en) | 2000-05-31 | 2005-01-04 | Cisco Technology, Inc. | Methods and apparatus for improving content quality in web caching systems |
US7395348B1 (en) | 2000-06-05 | 2008-07-01 | Cisco Technology, Inc. | Network cache-based content routing |
US7072979B1 (en) | 2000-06-28 | 2006-07-04 | Cisco Technology, Inc. | Wide area load balancing of web traffic |
US7366186B1 (en) * | 2000-06-30 | 2008-04-29 | Intel Corporation | Forwarding data in a routing architecture |
SG101985A1 (en) * | 2000-07-12 | 2004-02-27 | Distribution Systems Res Inst | Integrated information communication system |
US7388831B2 (en) * | 2000-07-26 | 2008-06-17 | Pluris, Inc. | Method and apparatus for bond management according to hierarchy |
US6553005B1 (en) * | 2000-07-26 | 2003-04-22 | Pluris, Inc. | Method and apparatus for load apportionment among physical interfaces in data routers |
US6996631B1 (en) * | 2000-08-17 | 2006-02-07 | International Business Machines Corporation | System having a single IP address associated with communication protocol stacks in a cluster of processing systems |
CA2432344C (en) * | 2000-08-21 | 2010-10-26 | Netiq Corporation | Data tracking using ip address filtering over a wide area network |
US7720903B1 (en) * | 2000-08-31 | 2010-05-18 | Intel Corporation | Client messaging in multicast networks |
DE10045784A1 (en) * | 2000-09-07 | 2002-03-28 | Deutsche Telekom Ag | Procedure for variable subnet management within the TCP / IP system |
AU2002214230A1 (en) * | 2000-10-31 | 2002-05-15 | Firebit Ltd. | A router-based system for providing multi-level data filtering and security services in a broadband environment |
US7103317B2 (en) * | 2000-12-12 | 2006-09-05 | The Directv Group, Inc. | Communication system using multiple link terminals for aircraft |
US6952580B2 (en) | 2000-12-12 | 2005-10-04 | The Directv Group, Inc. | Multiple link internet protocol mobile communications system and method therefor |
US7181162B2 (en) | 2000-12-12 | 2007-02-20 | The Directv Group, Inc. | Communication system using multiple link terminals |
US7400857B2 (en) * | 2000-12-12 | 2008-07-15 | The Directv Group, Inc. | Communication system using multiple link terminals |
US6760330B2 (en) | 2000-12-18 | 2004-07-06 | Sun Microsystems, Inc. | Community separation control in a multi-community node |
WO2002052798A2 (en) * | 2000-12-22 | 2002-07-04 | Research In Motion Limited | Wireless router system and method |
US20020087722A1 (en) * | 2000-12-29 | 2002-07-04 | Ragula Systems D/B/A/ Fatpipe Networks | Domain name resolution making IP address selections in response to connection status when multiple connections are present |
US20020087724A1 (en) * | 2000-12-29 | 2002-07-04 | Ragula Systems D/B/A Fatpipe Networks | Combining connections for parallel access to multiple frame relay and other private networks |
CA2368404C (en) * | 2001-01-18 | 2005-08-09 | Research In Motion Limited | Unified messaging system and method |
US7187949B2 (en) * | 2001-01-19 | 2007-03-06 | The Directv Group, Inc. | Multiple basestation communication system having adaptive antennas |
US7809403B2 (en) * | 2001-01-19 | 2010-10-05 | The Directv Group, Inc. | Stratospheric platforms communication system using adaptive antennas |
US8396513B2 (en) | 2001-01-19 | 2013-03-12 | The Directv Group, Inc. | Communication system for mobile users using adaptive antenna |
JP2002222160A (en) * | 2001-01-26 | 2002-08-09 | Fujitsu Ltd | Relay device |
US7068616B2 (en) * | 2001-02-05 | 2006-06-27 | The Directv Group, Inc. | Multiple dynamic connectivity for satellite communications systems |
US7103656B2 (en) * | 2001-02-20 | 2006-09-05 | Research In Motion Limited | System and method for administrating a wireless communication network |
US20020116355A1 (en) * | 2001-02-21 | 2002-08-22 | Jeremy Roschelle | System, method and computer program product for establishing collaborative work groups using networked thin client devices |
CA2641610C (en) * | 2001-03-09 | 2010-09-14 | Research In Motion Limited | Advanced voice and data operations in a mobile data communication device |
US20020132609A1 (en) * | 2001-03-14 | 2002-09-19 | Lewis Allan D. | Scalable and secure messaging system for a wireless network |
US7739497B1 (en) * | 2001-03-21 | 2010-06-15 | Verizon Corporate Services Group Inc. | Method and apparatus for anonymous IP datagram exchange using dynamic network address translation |
US20020174172A1 (en) * | 2001-03-29 | 2002-11-21 | Hatalkar Atul N. | Mechanism to control compilation and communication of the client-device profile by using unidirectional messaging over a broadcast channel |
US7085267B2 (en) * | 2001-04-27 | 2006-08-01 | International Business Machines Corporation | Methods, systems and computer program products for translating internet protocol (IP) addresses located in a payload of a packet |
FI20011075A0 (en) * | 2001-05-22 | 2001-05-22 | Keijo Laehetkangas | Utilization of geographic information on Internet addresses |
CA2388938C (en) * | 2001-06-08 | 2010-05-04 | The Distributions Systems Research Institute | Terminal-to-terminal communication connection control system for ip full service |
US7881208B1 (en) | 2001-06-18 | 2011-02-01 | Cisco Technology, Inc. | Gateway load balancing protocol |
US8200818B2 (en) * | 2001-07-06 | 2012-06-12 | Check Point Software Technologies, Inc. | System providing internet access management with router-based policy enforcement |
US7590684B2 (en) * | 2001-07-06 | 2009-09-15 | Check Point Software Technologies, Inc. | System providing methodology for access control with cooperative enforcement |
US20040107360A1 (en) * | 2002-12-02 | 2004-06-03 | Zone Labs, Inc. | System and Methodology for Policy Enforcement |
JP3539413B2 (en) * | 2001-08-31 | 2004-07-07 | ソニー株式会社 | Network connection device, network connection system, and network connection method |
US7035915B1 (en) * | 2001-09-05 | 2006-04-25 | Cisco Technology, Inc. | Method and apparatus for IP address assignment |
US7069343B2 (en) * | 2001-09-06 | 2006-06-27 | Avaya Technologycorp. | Topology discovery by partitioning multiple discovery techniques |
US20030069954A1 (en) * | 2001-10-05 | 2003-04-10 | Adc Telecommunications, Inc. | Subnet pooling |
US7065047B2 (en) * | 2001-10-22 | 2006-06-20 | Pctel, Inc. | System and method of providing computer networking |
US7317699B2 (en) * | 2001-10-26 | 2008-01-08 | Research In Motion Limited | System and method for controlling configuration settings for mobile communication devices and services |
US8725843B2 (en) * | 2001-11-28 | 2014-05-13 | Thomson Licensing | Method and apparatus for adaptively configuring a router |
US7046666B1 (en) | 2001-12-06 | 2006-05-16 | The Directv Group, Inc. | Method and apparatus for communicating between divergent networks using media access control communications |
DE60214590T2 (en) | 2001-12-07 | 2007-09-13 | Research In Motion Ltd., Waterloo | METHOD AND DEVICE FOR CONTROLLING INFORMATION DISTRIBUTION TO MOBILE STATIONS |
US7720997B1 (en) | 2001-12-19 | 2010-05-18 | Cisco Technology, Inc. | Path selection system |
US7571239B2 (en) * | 2002-01-08 | 2009-08-04 | Avaya Inc. | Credential management and network querying |
US7707306B2 (en) * | 2002-01-15 | 2010-04-27 | Panasonic Corporation | Routing device for connecting multiple physically discrete networks into a single system and startup method thereof |
JP4072370B2 (en) * | 2002-04-04 | 2008-04-09 | キヤノン株式会社 | Printer, printing method, program, and storage medium |
US7302691B2 (en) * | 2002-05-10 | 2007-11-27 | Sonics, Incorporated | Scalable low bandwidth multicast handling in mixed core systems |
US8072979B2 (en) * | 2002-06-07 | 2011-12-06 | The Distribution Systems Research Institute | Terminal-to-terminal communication control system for IP full service |
US20080046592A1 (en) | 2002-06-26 | 2008-02-21 | Research In Motion Limited | System and Method for Pushing Information Between a Host System and a Mobile Data Communication Device |
US7174376B1 (en) * | 2002-06-28 | 2007-02-06 | Cisco Technology, Inc. | IP subnet sharing technique implemented without using bridging or routing protocols |
US7215640B2 (en) * | 2002-07-11 | 2007-05-08 | Hitachi, Ltd. | Method and apparatus for path configuration in networks |
US20040008688A1 (en) * | 2002-07-11 | 2004-01-15 | Hitachi, Ltd. | Business method and apparatus for path configuration in networks |
KR100886550B1 (en) * | 2002-09-17 | 2009-03-02 | 삼성전자주식회사 | IP address allocation device and method |
US6850943B2 (en) * | 2002-10-18 | 2005-02-01 | Check Point Software Technologies, Inc. | Security system and methodology for providing indirect access control |
US7216359B2 (en) * | 2002-12-19 | 2007-05-08 | International Business Machines Corporation | Secure communication overlay using IP address hopping |
AU2003207721A1 (en) * | 2003-01-28 | 2004-08-30 | Tekelec | Methods and systems for non-disruptive physical address resolution |
KR100918733B1 (en) * | 2003-01-30 | 2009-09-24 | 삼성전자주식회사 | Distributed router and method for dynamically managing forwarding information |
US7408933B2 (en) * | 2003-02-20 | 2008-08-05 | Samsung Electronics Co., Ltd. | Distributed router with ping-pong preventing function and ping-pong preventing method using the same |
US20040174872A1 (en) * | 2003-03-03 | 2004-09-09 | Nokia Corporation | Apparatus and method for performing an address resolution protocol function |
US8136155B2 (en) * | 2003-04-01 | 2012-03-13 | Check Point Software Technologies, Inc. | Security system with methodology for interprocess communication control |
US7426577B2 (en) * | 2003-06-19 | 2008-09-16 | Avaya Technology Corp. | Detection of load balanced links in internet protocol netwoks |
US7788726B2 (en) * | 2003-07-02 | 2010-08-31 | Check Point Software Technologies, Inc. | System and methodology providing information lockbox |
US8862866B2 (en) | 2003-07-07 | 2014-10-14 | Certicom Corp. | Method and apparatus for providing an adaptable security level in an electronic communication |
US7359335B2 (en) * | 2003-07-18 | 2008-04-15 | International Business Machines Corporation | Automatic configuration of network for monitoring |
US7593346B2 (en) | 2003-07-31 | 2009-09-22 | Cisco Technology, Inc. | Distributing and balancing traffic flow in a virtual gateway |
CA2478274C (en) * | 2003-08-19 | 2015-12-08 | Certicom Corp. | Method and apparatus for synchronizing an adaptable security level in an electronic communication |
US7876757B2 (en) * | 2003-11-06 | 2011-01-25 | International Business Machines Corporation | Router-assisted fast processing of packet termination in host |
JP4401864B2 (en) * | 2004-05-17 | 2010-01-20 | パナソニック株式会社 | Packet generation method, communication method, packet processing method, and data structure |
US8136149B2 (en) * | 2004-06-07 | 2012-03-13 | Check Point Software Technologies, Inc. | Security system with methodology providing verified secured individual end points |
US20060002289A1 (en) * | 2004-07-02 | 2006-01-05 | Sunil Menon | Faults and status in virtual private networks |
US7627896B2 (en) * | 2004-12-24 | 2009-12-01 | Check Point Software Technologies, Inc. | Security system providing methodology for cooperative enforcement of security policies during SSL sessions |
WO2006110977A1 (en) | 2005-04-18 | 2006-10-26 | Research In Motion Limited | Method for providing wireless application privilege management |
KR100675847B1 (en) * | 2005-05-24 | 2007-02-02 | 삼성전자주식회사 | A network interface device for controlling image data transfer with reference to an executable function set for each address and a method of controlling image data transfer thereof |
KR100653527B1 (en) | 2005-05-30 | 2006-12-05 | 주식회사 팬택앤큐리텔 | How Internet Protocol Addresses Work |
US7609642B2 (en) * | 2005-09-12 | 2009-10-27 | Computer Associates Think, Inc, | Detecting network interfaces capable of channel bonding |
CA2644015C (en) | 2006-04-13 | 2016-10-18 | Certicom Corp. | Method and apparatus for providing an adaptable security level in an electronic communication |
US20080019376A1 (en) * | 2006-07-21 | 2008-01-24 | Sbc Knowledge Ventures, L.P. | Inline network element which shares addresses of neighboring network elements |
US8300639B2 (en) * | 2006-07-28 | 2012-10-30 | International Business Machines Corporation | Forwarding groups of multicast flows |
US8312507B2 (en) | 2006-10-17 | 2012-11-13 | A10 Networks, Inc. | System and method to apply network traffic policy to an application session |
US8584199B1 (en) | 2006-10-17 | 2013-11-12 | A10 Networks, Inc. | System and method to apply a packet routing policy to an application session |
US8259720B2 (en) * | 2007-02-02 | 2012-09-04 | Cisco Technology, Inc. | Triple-tier anycast addressing |
US8179872B2 (en) | 2007-05-09 | 2012-05-15 | Research In Motion Limited | Wireless router system and method |
CN101897157A (en) | 2007-11-20 | 2010-11-24 | 松下电器产业株式会社 | Address allocation method, address allocation system, mobile node, and proxy node |
US8667175B2 (en) * | 2008-03-13 | 2014-03-04 | Cisco Technology, Inc. | Server selection for routing content to a client using application layer redirection |
US8171413B2 (en) * | 2008-04-02 | 2012-05-01 | Manatee County, A Political Subdivision Of The State Of Florida | System and method for displaying information about subnets |
US7856024B1 (en) * | 2008-12-12 | 2010-12-21 | Tellabs San Jose, Inc. | Method and apparatus for integrating routing and bridging functions |
US8359374B2 (en) * | 2009-09-09 | 2013-01-22 | Vmware, Inc. | Fast determination of compatibility of virtual machines and hosts |
JP5383415B2 (en) * | 2009-10-02 | 2014-01-08 | キヤノン株式会社 | COMMUNICATION DEVICE, COMMUNICATION DEVICE COMMUNICATION METHOD, AND PROGRAM |
US8351340B2 (en) * | 2010-04-14 | 2013-01-08 | Honeywell International Inc. | Method for detecting a proxy ARP agent in secure networks having embedded controllers |
US9130835B1 (en) * | 2010-12-01 | 2015-09-08 | Juniper Networks, Inc. | Methods and apparatus for configuration binding in a distributed switch |
US9258206B2 (en) | 2012-03-14 | 2016-02-09 | Panorama9, Inc. | System administration |
US9118618B2 (en) | 2012-03-29 | 2015-08-25 | A10 Networks, Inc. | Hardware-based packet editor |
US9197548B2 (en) * | 2012-08-15 | 2015-11-24 | Dell Products L.P. | Network switching system using software defined networking applications |
US9338225B2 (en) | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
US9992107B2 (en) | 2013-03-15 | 2018-06-05 | A10 Networks, Inc. | Processing data packets using a policy based network path |
US10038693B2 (en) | 2013-05-03 | 2018-07-31 | A10 Networks, Inc. | Facilitating secure network traffic by an application delivery controller |
US9942152B2 (en) | 2014-03-25 | 2018-04-10 | A10 Networks, Inc. | Forwarding data packets using a service-based forwarding policy |
US10268467B2 (en) | 2014-11-11 | 2019-04-23 | A10 Networks, Inc. | Policy-driven management of application traffic for providing services to cloud-based applications |
US10855644B1 (en) * | 2019-09-09 | 2020-12-01 | Vmware, Inc. | Address resolution protocol entry verification |
US11575646B2 (en) | 2020-03-12 | 2023-02-07 | Vmware, Inc. | Domain name service (DNS) server cache table validation |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5251205A (en) * | 1990-09-04 | 1993-10-05 | Digital Equipment Corporation | Multiple protocol routing |
DE69330981T2 (en) * | 1992-04-20 | 2002-06-27 | 3Com Corp., Santa Clara | Device for expanding network means to remote networks |
US5432907A (en) * | 1992-05-12 | 1995-07-11 | Network Resources Corporation | Network hub with integrated bridge |
US5442708A (en) * | 1993-03-09 | 1995-08-15 | Uunet Technologies, Inc. | Computer network encryption/decryption device |
JP3746785B2 (en) * | 1993-07-28 | 2006-02-15 | 3コム コーポレイション | Network station with multiple network addresses |
JP3224963B2 (en) * | 1994-08-31 | 2001-11-05 | 株式会社東芝 | Network connection device and packet transfer method |
US5751971A (en) * | 1995-07-12 | 1998-05-12 | Cabletron Systems, Inc. | Internet protocol (IP) work group routing |
-
1995
- 1995-07-12 US US08/501,324 patent/US5751971A/en not_active Expired - Lifetime
-
1996
- 1996-07-12 WO PCT/US1996/011680 patent/WO1997002734A2/en active Application Filing
- 1996-07-12 AU AU65453/96A patent/AU6545396A/en not_active Abandoned
-
1998
- 1998-05-06 US US09/073,557 patent/US6249820B1/en not_active Expired - Lifetime
-
2001
- 2001-06-15 US US09/882,275 patent/US20020029288A1/en not_active Abandoned
Cited By (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097361A1 (en) * | 1997-07-07 | 2002-07-25 | Ham Yong Sung | In-plane switching mode liquid crystal display device |
US7301945B1 (en) * | 1999-10-12 | 2007-11-27 | Alcatel | Device and method to compress destination addresses of a multicast message |
US20030076854A1 (en) * | 2000-01-10 | 2003-04-24 | Mudhar Parminder S | Communications network |
US7535914B2 (en) * | 2000-01-10 | 2009-05-19 | British Telecommunications Plc | Communications network |
US8032638B2 (en) * | 2001-08-29 | 2011-10-04 | Huawei Technologies Co., Ltd. | Calling method for node across zones in IP network system |
US20040186913A1 (en) * | 2001-08-29 | 2004-09-23 | Jinsong Xie | Calling method for node across zones in ip network system |
US7522627B2 (en) * | 2001-09-14 | 2009-04-21 | Nokia Corporation | System and method for packet forwarding |
US20030072318A1 (en) * | 2001-09-14 | 2003-04-17 | Nokia Inc. | System and method for packet forwarding |
US8447887B1 (en) | 2002-02-14 | 2013-05-21 | Marvell International Ltd. | Method and apparatus for enabling a network interface to support multiple networks |
US8244916B1 (en) * | 2002-02-14 | 2012-08-14 | Marvell International Ltd. | Method and apparatus for enabling a network interface to support multiple networks |
US8886839B1 (en) | 2002-02-14 | 2014-11-11 | Marvell International Ltd. | Method and apparatus for enabling a network interface to support multiple networks |
US7042852B2 (en) | 2002-05-20 | 2006-05-09 | Airdefense, Inc. | System and method for wireless LAN dynamic channel change with honeypot trap |
US20070189194A1 (en) * | 2002-05-20 | 2007-08-16 | Airdefense, Inc. | Method and System for Wireless LAN Dynamic Channel Change with Honeypot Trap |
US20030236990A1 (en) * | 2002-05-20 | 2003-12-25 | Scott Hrastar | Systems and methods for network security |
US7526808B2 (en) | 2002-05-20 | 2009-04-28 | Airdefense, Inc. | Method and system for actively defending a wireless LAN against attacks |
US8060939B2 (en) | 2002-05-20 | 2011-11-15 | Airdefense, Inc. | Method and system for securing wireless local area networks |
US7383577B2 (en) | 2002-05-20 | 2008-06-03 | Airdefense, Inc. | Method and system for encrypted network management and intrusion detection |
US20030233567A1 (en) * | 2002-05-20 | 2003-12-18 | Lynn Michael T. | Method and system for actively defending a wireless LAN against attacks |
US7058796B2 (en) | 2002-05-20 | 2006-06-06 | Airdefense, Inc. | Method and system for actively defending a wireless LAN against attacks |
US7779476B2 (en) | 2002-05-20 | 2010-08-17 | Airdefense, Inc. | Active defense against wireless intruders |
US7086089B2 (en) | 2002-05-20 | 2006-08-01 | Airdefense, Inc. | Systems and methods for network security |
US20070094741A1 (en) * | 2002-05-20 | 2007-04-26 | Airdefense, Inc. | Active Defense Against Wireless Intruders |
US20030219008A1 (en) * | 2002-05-20 | 2003-11-27 | Scott Hrastar | System and method for wireless lan dynamic channel change with honeypot trap |
US20070192870A1 (en) * | 2002-05-20 | 2007-08-16 | Airdefense, Inc., A Georgia Corporation | Method and system for actively defending a wireless LAN against attacks |
US7277404B2 (en) | 2002-05-20 | 2007-10-02 | Airdefense, Inc. | System and method for sensing wireless LAN activity |
US20030217283A1 (en) * | 2002-05-20 | 2003-11-20 | Scott Hrastar | Method and system for encrypted network management and intrusion detection |
US7532895B2 (en) | 2002-05-20 | 2009-05-12 | Air Defense, Inc. | Systems and methods for adaptive location tracking |
US20040098610A1 (en) * | 2002-06-03 | 2004-05-20 | Hrastar Scott E. | Systems and methods for automated network policy exception detection and correction |
US7322044B2 (en) | 2002-06-03 | 2008-01-22 | Airdefense, Inc. | Systems and methods for automated network policy exception detection and correction |
US20040203764A1 (en) * | 2002-06-03 | 2004-10-14 | Scott Hrastar | Methods and systems for identifying nodes and mapping their locations |
US7716368B2 (en) * | 2003-03-28 | 2010-05-11 | Sony Corporation | Network system and communication method, information processing apparatus and method, and program |
US20050177646A1 (en) * | 2003-03-28 | 2005-08-11 | Sony Corporation | Network system and communication method, and information processing apparatus, method and program |
US20040209634A1 (en) * | 2003-04-21 | 2004-10-21 | Hrastar Scott E. | Systems and methods for adaptively scanning for wireless communications |
US7359676B2 (en) | 2003-04-21 | 2008-04-15 | Airdefense, Inc. | Systems and methods for adaptively scanning for wireless communications |
US20040210654A1 (en) * | 2003-04-21 | 2004-10-21 | Hrastar Scott E. | Systems and methods for determining wireless network topology |
US7522908B2 (en) | 2003-04-21 | 2009-04-21 | Airdefense, Inc. | Systems and methods for wireless network site survey |
US20040209617A1 (en) * | 2003-04-21 | 2004-10-21 | Hrastar Scott E. | Systems and methods for wireless network site survey systems and methods |
US7324804B2 (en) | 2003-04-21 | 2008-01-29 | Airdefense, Inc. | Systems and methods for dynamic sensor discovery and selection |
US20040218602A1 (en) * | 2003-04-21 | 2004-11-04 | Hrastar Scott E. | Systems and methods for dynamic sensor discovery and selection |
US7355996B2 (en) | 2004-02-06 | 2008-04-08 | Airdefense, Inc. | Systems and methods for adaptive monitoring with bandwidth constraints |
US20060015635A1 (en) * | 2004-06-17 | 2006-01-19 | International Business Machines Corporation | Method and apparatus for handling address resolution protocol requests for a device having multiple interfaces |
US20060085543A1 (en) * | 2004-10-19 | 2006-04-20 | Airdefense, Inc. | Personal wireless monitoring agent |
US20060123133A1 (en) * | 2004-10-19 | 2006-06-08 | Hrastar Scott E | Detecting unauthorized wireless devices on a wired network |
US8196199B2 (en) | 2004-10-19 | 2012-06-05 | Airdefense, Inc. | Personal wireless monitoring agent |
US7577424B2 (en) | 2005-12-19 | 2009-08-18 | Airdefense, Inc. | Systems and methods for wireless vulnerability analysis |
US7715800B2 (en) | 2006-01-13 | 2010-05-11 | Airdefense, Inc. | Systems and methods for wireless intrusion detection using spectral analysis |
US20070220250A1 (en) * | 2006-03-14 | 2007-09-20 | Hiroshi Tamura | Network apparatus, ipsec setting method therein, and computer-readable recording medium storing a control program for executing the method |
US8281124B2 (en) * | 2006-03-14 | 2012-10-02 | Ricoh Company, Ltd. | Network apparatus, IPsec setting method therein, and computer-readable recording medium storing a control program for executing the method |
US20070218874A1 (en) * | 2006-03-17 | 2007-09-20 | Airdefense, Inc. | Systems and Methods For Wireless Network Forensics |
US7971251B2 (en) | 2006-03-17 | 2011-06-28 | Airdefense, Inc. | Systems and methods for wireless security using distributed collaboration of wireless clients |
US20070217371A1 (en) * | 2006-03-17 | 2007-09-20 | Airdefense, Inc. | Systems and Methods for Wireless Security Using Distributed Collaboration of Wireless Clients |
US20090021343A1 (en) * | 2006-05-10 | 2009-01-22 | Airdefense, Inc. | RFID Intrusion Protection System and Methods |
US7970013B2 (en) | 2006-06-16 | 2011-06-28 | Airdefense, Inc. | Systems and methods for wireless network content filtering |
US20080052779A1 (en) * | 2006-08-11 | 2008-02-28 | Airdefense, Inc. | Methods and Systems For Wired Equivalent Privacy and Wi-Fi Protected Access Protection |
US8281392B2 (en) | 2006-08-11 | 2012-10-02 | Airdefense, Inc. | Methods and systems for wired equivalent privacy and Wi-Fi protected access protection |
Also Published As
Publication number | Publication date |
---|---|
US6249820B1 (en) | 2001-06-19 |
WO1997002734A2 (en) | 1997-01-30 |
US5751971A (en) | 1998-05-12 |
WO1997002734A3 (en) | 1997-07-24 |
AU6545396A (en) | 1997-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6249820B1 (en) | Internet protocol (IP) work group routing | |
US5835720A (en) | IP discovery apparatus and method | |
AU3572999A (en) | Establishing connectivity in networks | |
KR100751991B1 (en) | Data network node having enhanced security features | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk | |
Cisco | Configuring AppleTalk Routing | |
Cisco | Configuring AppleTalk Routing | |
Cisco | Configuring AppleTalk Routing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |