System and method for address block enhanced dynamic network policy management

Information

  • Patent Grant
  • 7945945
  • Patent Number
    7,945,945
  • Date Filed
    Monday, August 8, 2005
    18 years ago
  • Date Issued
    Tuesday, May 17, 2011
    13 years ago
Abstract
A method, computer readable medium, and system for acquiring address block information for an attached function that initiates network access on a distributed computing network. Additional policy information in acquired concerning the attached function. One or more access policies are set based, at least in part, on the address block information and the additional policy information.
Description
TECHNICAL FIELD

The present embodiment relates to comprehensive and continuous control of usage of network services. More particularly, the present embodiment relates to static and dynamic policy allocation for network service provisioning based on address block techniques. Specifically the use of the IEEE 802 Organization Unique Identifiers (OUI), Individual Address Block (IAB) assignments of the MAC addresses provided by the IEEE 802 organization or the local address administration as an input into the decision process in policy, authorization, network admission and network service attribute assignment.


BACKGROUND

Computing systems are useful tools for the exchange of information among individuals. The information may include, but is not limited to, data, voice, graphics, and video. The exchange is established through interconnections linking the computing systems together in a way that permits the transfer of electronic signals that represent the information. The interconnections may be either cable or wireless. Cable connections include, for example, metal and optical fiber elements. Wireless connections include, for example infrared, acoustic, and radio wave transmissions.


Interconnected computing systems having some sort of commonality are represented as a network. For example, individuals associated with a college campus may each have a computing device. In addition, there may be shared printers and remotely located application servers distributed throughout the campus. There is commonality among the individuals in that they all are associated with the college in some way. The same can be said for individuals and their computing arrangements in other environments including, for example, healthcare facilities, manufacturing sites and Internet access users. A network permits communication or signal exchange among the various computing systems of the common group in some selectable way. The interconnection of those computing systems, as well as the devices that regulate and facilitate the exchange among the systems, represent a network. Further, networks may be interconnected together to establish internetworks. For purposes of the description of the present embodiment, the devices and functions that establish the interconnection represent the network infrastructure. The users, computing devices and the like that use that network infrastructure to communicate are referred to herein as attached functions and will be further defined. The combination of the attached functions and the network infrastructure will be referred to as a network system.


The process by which the various computing systems of a network or internetwork communicate is generally regulated by agreed-upon signal exchange standards and protocols embodied in network interface cards or circuitry and software, firmware and microcoded algorithms. Such standards and protocols were borne out of the need and desire to provide interoperability among the array of computing systems available from a plurality of suppliers. Two organizations that have been responsible for signal exchange standardization are the Institute of Electrical and Electronic Engineers (IEEE) and the Internet Engineering Task Force (IETF). In particular, the IEEE standards for internetwork operability have been established, or are in the process of being established, under the purview of the IEEE 802 committee on Local Area Networks (LANs) and Metropolitan Area Networks (MANs). The IEEE 802 also provide a service in the assignment of OUI and IAB values to define unique address space which may be assigned to individual organizations.


The identified organizations generally focus on the mechanics of network and internetwork operation, less so on rules and restrictions on access to, and the provisioning of services associated with, the network. Presently, access to applications, files, databases, programs, and other capabilities associated with the entirety of a discrete network is restricted primarily based on the identity of the user and/or the network attached function. For the purpose of the description of the present embodiment, a “user” is a human being who interfaces via a computing device with the services associated with a network. For further purposes of clarity, a “network attached function” or an “attached function” may be a user connected to the network through a computing device and a network interface device, an attached device connected to the network, a function using the services of or providing services to the network, or an application associated with an attached device. Upon authentication of the offered attached function identity, that attached function may access network services at the level permitted for that identification. For purposes of the present description, “network services” include, but are not limited to, access, Quality of Service (QoS), bandwidth, priority, computer programs, applications, databases, files, and network and server control systems that attached functions may use or manipulate for the purpose of conducting the business of the enterprise employing the network as an enterprise asset. The basis upon which the network administrator grants particular permissions to particular attached functions in combination with the permissions is an established network usage policy. For example, one policy may be that any user (one type of attached function) with an employee identification number is granted access to the enterprise's electronic mail system at a specified bandwidth and QoS level.


Presently, the network administrator establishes policies. The policies are defined in and regulated through a policy server controlled by the administrator. The established policies are transmitted to the network interface devices of the network infrastructure at the connection point or port. As part of the authentication process, a particular set of policies are established by the administrator for that attached function. That is, the port at which that attached function is attached to the network infrastructure is configured to effect those policies. For example, QoS, bandwidth, and priority levels may be set at certain values for one identified attached function and at different levels for another attached function. Once that set of policies has been established for that attached function, there is typically no coordinated mechanism to revise the set of policies during network connection based on a change of circumstances.


Unfortunately, events and activities do occur that may be harmful to the network system. For purposes of this description, harm to the network system includes, for example, access denial, intentionally tying up network computing resources, intentionally forcing bandwidth availability reduction, and restricting, denying or modifying network-related information. There are currently two generally available forms of network protection designed to minimize such types of network harm. Firewalls are designed to prevent the passage of packets to the network based on certain limited specific conditions associated with the packets. Firewalls do not enable assigned policy modifications. Intrusion Detection Systems (IDS) are designed to observe packets, the state of packets, and patterns of usage of packets entering or within the network infrastructure for harmful behavior. However, the available IDS only report the existence of potentially harmful anomalies and do not enable responsive policy modification. Any adjustment to the state of permitted attached function network usage typically occurs manually after evaluation of the detected anomalies. There is presently little comprehensive capability available for continuous network system monitoring and network-forced adjustment or change of assigned network usage permissions based upon the detection of one or more conditions that would trigger such a change.


In certain limited instances, network usage (meaning first entry to the network system for the purpose of accessing the network services and the subsequent use of such services) may be restricted for reasons other than user authentication. For example, an attached function seeking usage of a discrete network system through dial-up or virtual private networking may be isolated from certain network services simply because private network entry is made through a public portal, i.e., the internet. It is also understood that in certain academic settings offering wireless connectivity, network usage may be limited upon detection of attached function attempts to seek unauthorized access to specified restricted network services. Further, the use of dynamic policy assignment has been defined and extended in co-pending U.S. patent application Ser. No. 10/629,331 entitled “System and Method for Dynamic Network Policy Management” of John Roese et al. and assigned to a common assignee. Even this work, however, leaves cases of insufficient information available to make proper Acceptable Use Policy (AUP) assignments or other dynamic policy decisions. Thus the network system is unable to provide proper services and unable to limit the traffic to and from an attached device sufficiently to: (a) protect the network from an unknown device; and (b) protect the device from attack by the network or from devices/attackers through the network infrastructure. This failure or inability to protect devices such as process or manufacturing control devices from attack by or through the network interface is the exact reason so few systems may be networked beyond the locked doors and well controlled physical access. Despite the benefit of data collection, software updates, and closed loop operation capabilities, the fear and reality of the device vulnerabilities limit the network extent and scale granted to these devices. Often these and other devices lack the security or software and features to interact in a secure network environment. Authentication capabilities may be non-existent; no human user may ever be associated with the device or device may have no interface for authentication, such as WiFi phones.


SUMMARY OF THE DISCLOSURE

According to one implementation, a method includes acquiring address block information for an attached function that initiates network access on a distributed computing network. Additional policy information in acquired concerning the attached function. One or more access policies are set based, at least in part, on the address block information and the additional policy information.


One or more of the following features may also be included. The address block information may be obtained from an OUI field of a MAC address. Acquiring additional policy information may include obtaining stored policy information, or querying the attached function for policy information. The additional policy information may include one or more of: attached function location information; attached function configuration information; attached function operating system information; attached function security features information; user location information; and network entry port information. Network operations of the distributed computing network may be monitored to detect when the attached function initiates network access. The attached function may be authenticated in response to the attached function initiating network access.


According to another implementation, a computer program product residing on a computer readable medium has a plurality of instructions stored on it. When the instructions are executed by a processor, the instructions cause the processor to acquire address block information for an attached function that initiates network access on a distributed computing network. Additional policy information in acquired concerning the attached function. One or more access policies are set based, at least in part, on the address block information and the additional policy information.


One or more of the following features may also be included. The address block information may be obtained from an OUI field of a MAC address. Acquiring additional policy information may include obtaining stored policy information, or querying the attached function for policy information. The additional policy information may include one or more of: attached function location information; attached function configuration information; attached function operating system information; attached function security features information; user location information; and network entry port information. Network operations of the distributed computing network may be monitored to detect when the attached function initiates network access. The attached function may be authenticated in response to the attached function initiating network access.


According to another implementation, a system is configured for acquiring address block information for an attached function that initiates network access on a distributed computing network. Additional policy information in acquired concerning the attached function. One or more access policies are set based, at least in part, on the address block information and the additional policy information.


One or more of the following features may also be included. The address block information may be obtained from an OUI field of a MAC address. Acquiring additional policy information may include obtaining stored policy information, or querying the attached function for policy information. The additional policy information may include one or more of: attached function location information; attached function configuration information; attached function operating system information; attached function security features information; user location information; and network entry port information. Network operations of the distributed computing network may be monitored to detect when the attached function initiates network access. The attached function may be authenticated in response to the attached function initiating network access.


The details of one or more implementations is set forth in the accompanying drawings and the description below. Other features and advantages will become apparent from the description, the drawings, and the claims.





DESCRIPTION OF DRAWINGS


FIG. 1 is a simplified diagrammatic block representation of an example network system with integrated comprehensive access control of the present embodiment;



FIG. 2 is a flow diagram of an illustrative preliminary network access and policy process of the present embodiment; and



FIG. 3 is a table listing example event information, network occurrences and static and dynamic policies for purposes of controlling network system access and usage through the policying system and method of the present embodiment.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In a general aspect, the embodiment adds another element to a dynamic policying system. The use of the OUI field within the MAC address of the IEEE 802 assigned Ethernet address provides another useful data point for dynamic policy and AUP assignment. The OUI is often referred to as the company code and is assigned to a company by the IEEE 802 for use in providing a unique address block to the company for use in their products. IEEE 802 network devices, with the exception of the traditional PC and Laptops, are often becoming specialized commodity items with many dedicated devices emerging. Often the dedicated devices are receiving dedicated OUI identifiers based on the company of origin. Cell phones are a new class of mobile device with this property, for which rapid setup, high QOS and guest service will be required on the enterprise data infrastructure. Additionally, the IEEE address assignment authority has a further refinement of the addressing structure called an Individual Assignment Block (IAB) This block is only 4096 addresses and allows even the smallest business or organization to have unique address groups for their LAN products. In addition to these well defined address blocks, another mechanism exists to provide further meaning and information to an IEEE 802 addressing structure. Local address administration is another technique, whereby the administrators' addresses may be assigned. In a structured approach, these locally administered addresses are generally assigned in groups, blocks, or some organized or hierarchical manner. Local address assignment allows for even stronger association between address and functional capability, network AUP and service requirements, including being the sole definitive, determining factor. These assignments types and techniques of adding grouping and classification to the addressing structure shall be defined herein to be Address Blocks. It should be recognized that the block size may be as large as the addressing capability, or as small as a single address. Additionally, other structure may be added or impressed by assignment or interpretation to the addressing, such as groups within groups or hierarchical mapping. Address blocks may provide at least a strong hint or even a definitive requirement to the network use, capabilities, limitations and needs of the devices using these addresses. Dynamic policy systems may further refine the AUP, ingress and egress policy assignment based on additional data and event information. However, the address block information provides an extremely strong starting point in that process. This address block based starting point for the static or dynamic policy based system may vastly decrease the effort and time to place the device in the “best” policy assigned states. Here, “best” is defined as the most restrictive policies in terms of packets egressing to the device (protect the device from harm by the network) and full coverage of all required ingress capabilities including all features, bandwidth and forwarding QOS metrics, while further limiting its ingress as completely as possible to ONLY the required ingress capabilities (tightly controlled AUP assignment).


The address block can simple be considered another finer grained event in the trigger based system of dynamic policy. A trigger is any detected or observed event, activity, occurrence, information or characteristic identified in a network system by the network administrator as being of interest for the purpose of making a modification to an assigned set of policies. The types of triggers that define usage restrictions may be of any type of interest to the network administrator, including those associated with user authentication as traditionally understood. Examples of relevant triggers will be provided herein. The system configuration can vary and can include any type of data network, including LANs, MANs, Wide Area Networks (WANs), Personal Area Networks (PANs), Virtual Private Networks (VPNs), and Home Networks. The system may be used in any of a variety of ways to improve network usage, configuration accuracy, allocation of network resources, control, and security.


The present embodiment is a system and related method for provisioning policies to attached functions in a dynamic manner using address block information as an input. Referring to FIG. 1, a network system 100 incorporating the capability of the address block policying system of the present embodiment operates and provides network services to attached functions according to policies assigned to the attached functions. Network system 100 includes a network infrastructure 101 and one or more attached functions connected to or connectable to the network infrastructure 101. The network infrastructure 101 includes multiple switching devices, routing devices, access points, MANs, WANs, VPNs, and internet connectivity interconnected and connectable to by way of connection points (e.g., 102a-k). The policying system of the embodiment employs both hardware and software (e.g., a function embodied in an application executing on policy server 103) to establish network usage control throughout the entire network system 100 at all times as described below. An attached function is external to infrastructure 101 and forms part of network system 100. Examples of attached functions 104a-104d are represented in FIG. 1, and may be any of the types of attached functions previously identified. Network infrastructure entry devices 105a-b of infrastructure 101 provide the means by which the attached functions connect or attach to the infrastructure 101. A network entry device can include and/or be associated with a wireless access point 150. For wireless connection of an attached function to the infrastructure 101, the wireless access point 150 can be an individual device external or internal to the network entry device 104b. A central switching device 106 enables the interconnection of a plurality of network entry devices as well as access to network services, such as policy server 103 or an application server 107. The central switching device 106 further enables the interconnection of the network infrastructure 101 to attached functions that include VPNs (represented by VPN gateway device 120) and WANs (represented by internet cloud 130).


One or more of the devices of the infrastructure 101 include a dynamic policy function module 108 (e.g., modules 108a, 108b, 108c, 108d). The dynamic policy function module 108 includes the sub-functions of monitoring the network for triggers, including address block information, decision making of whether to modify an assigned set of policies and, if so, in what way, and enforcement of the assigned set of policies. The dynamic policy function module 108 of any particular device of infrastructure 101 may include any one or more of the three identified sub-functions. It is contemplated that the policy server 103 under control of the network administrator will have primary responsibility for decision making of assigning and modifying sets of policies. However, it is also contemplated that some decision making may be established in the module 108 of a network device. That is, for example, module 108c of central switching device 106 may include the decision making sub-function and modules 108a and 108b of network entry devices 104a and 104b (respectively) may have monitoring and enforcement sub-functions for the attached functions to which they are connected. In addition, there may be network devices that have no dynamic policy function module 108. Instead, such “dumb” devices may simply provide packet exchange functionality only and leave monitoring, decision making and enforcement to other devices of the infrastructure 101. The dynamic policy sub-functions may include algorithms and processes necessary to identify information about attached functions, monitor network activity, enforce sets of policies, and make decisions regarding assigned policies. Module 108 can be implemented in hardware and/or software. For example, particular software, firmware, or microcode functions executing on the network infrastructure devices can provide the monitoring functions to be described herein, policy enforcement as presently available in network infrastructure devices, and policy decision making. Alternatively, or in addition, hardware modules, such as programmable arrays, can be used in the devices to provide some or all of those capabilities.


In the illustrated network system 100, an attached function such as a service 104a attaches to infrastructure 101 via cable 109 through connection point 102b (e.g., a jack in a wall). Similarly, network infrastructure entry devices 105a-b and central switching device 106 connect to each other using cables 110 and 111 to connection points 102g-h. In a portion of the network employing cables, a connection point (e.g., 102a-j) is the terminus of the cable where a device physically attaches.


Access by an attached function to the network services associated with network system 100 includes a setting of static and/or dynamic policies, referred to generally as a set of policies, for the attached function. Sets of policies are established by the network administrator. Information regarding an attached function seeking or having access to network services and the sets of policies may be stored centrally or in a distributed manner, including being stored locally. In an example of a centralized approach, the policying system of the present embodiment stores attached function and policy set information for all of the connection points of the network system 100 in a server such as policy server 103. In an example of a distributed approach, described in more detail in the alternatives section below, the policying system stores attached function and policy set information for all attached functions, or a portion of the attached functions, in one or more of the local network devices 105a-b and 106 of the network infrastructure 101.


The system of the present embodiment is able to enforce established and generated policies, on an initial and continual basis, based on usage permission rules established by a network administrator and these may contain address block information. It can restrict usage of the network system and its services based on the attached function's characteristics, the particular connection point through which network infrastructure connection is established, and network system events related or unrelated to the attached function. All policy sets may be directed to all network entry devices. Alternatively, the policy sets may be apportioned among the network entry devices and attached functions forced to particular connection points based on established sets of policies. It is contemplated that multiple policies will be applied to the connection points, some with overlapping purpose. Also, some policies configured at the network entry devices may be applicable to some attached functions but not to others.


As illustrated in FIG. 2, a preliminary process for network entry 200 of the present embodiment includes the initial steps of the complete process to regulate usage of the network system 100 throughout the entirety of a network session. The entry process 200 may be started using conventional entry methods upon attached function initiation of a network entry request (step 201) such as by booting up a device or initiating a connection to a network entry device at a connection point using a computing device such as a computer. The network control system then initiates attached function authentication methods, if available, or may rely entirely on cached information and address block recognition capability.


Entry to the network system 100, and the infrastructure 101 primarily, may also be initially regulated using authentication systems such as Network Operating Systems (NOSs), Remote Authentication Dial-In User Service (RADIUS), described in IETF Request For Comment (RFC) 2138, IEEE 802.1X standard and/or address block information and other techniques.


In addition to acquiring the attached function information necessary to authenticate access to the network services, the policying system is configured to obtain stored information or query the attached function (step 203) for such further additional information identified by the network administrator as being of importance in assessing relevant policies. Such further additional information includes, but is not limited to: attached function location, attached function configuration, attached function operating system, attached function security features, user location, and network entry port information. Based upon information obtained using address block information (step 202) and the additional attached function information (if any) (step 203), the system 100 makes a preliminary determination of the attached function's permission to access network services (step 204). If the information acquired is authenticated or otherwise accepted, the attached function enters the network. The process 200 further includes a check on whether additional challenges have been established upon preliminary permitted entry to the network infrastructure 101, or if additional external challenges have been established. Process 200 continues with the normal dynamic policy process of obtaining network, user, device, application information (step 205) and applying dynamic policy rules applicable to such events (step 206), as disclosed in U.S. patent application Ser. No. 11/066,622, filed 25 Feb. 2005, and entitled “DYNAMIC NETWORK DETECTION SYSTEM AND METHOD”.



FIG. 3 provides a list of the types of information variables that may be employed to determine static and dynamic policies. FIG. 3 further provides a list of the triggering events, activities, or occurrences that may result in a change of dynamic or static policy. FIG. 3, still further, provides a list of the types of policies that may be changed, which policies may be static policies or dynamic policies. It is to be understood that FIG. 3 provides a representative sampling of the information, activities and policies that may be identified, examined, and/or changed pursuant to the system of the present embodiment. It is also to be understood that static policies may be converted into dynamic policies and dynamic policies may be converted into static policies. It is also to be understood that any packet-based information to or from a local connection port, any network information, any attached function information (including all other ports), any algorithmically-derived information based on history, time, time of day, or combinations of any or all data may be the type of information included in Column 1 of FIG. 3. It is also further to be understood that any changes to Column 1 or to Column 3 may be a change triggering event in Column 2 of FIG. 3. Still further, it is also to be understood that the degree of control may be varied for any of the policies identified in Column 3 of FIG. 3.


The policying system of the present embodiment is configured to maintain and update the information associated with the attached functions and the network infrastructure 101 of the network system 100 in a centralized database, including the saved policies history. Alternatively, the saved policies history may be stored in a distributed manner, including, for example, being stored or cached on a local network access device. The information included in the database can vary. For example, a table containing the information may form part of or be accessible by the database. Such a table may associate each attached function with one or more access devices, one or more access connection points, applications requested, priority requested, as well as other information of the type represented in FIG. 3. If the assigned policy information is cached in a centralized, distributed or local way, it may be invalidated or otherwise eliminated as desired by the network administrator based on time, size limitations, storage limits, changes in caching policies, changes in assigned policies, or other events, conditions or other types of triggers in the network system 100.


Use of the above techniques enables the system of the present embodiment to restrict access to the network system 100 and network services including, but not limited to data, applications, specific network infrastructure devices, data and network service, QoS levels, network tools, and the like, based on the attached function and the connection point through which the attached function seeks network usage, and based on monitored triggers. Further to the techniques above, system 100 can employ the specified information to effect a modification of the usage requirements. For example, when an attached function is permitted network services usage via a connection point deemed not to be inherently secure (e.g., an edge switch port associated with an external internet connection), the policying system can prompt the attached function to initiate an improved connection, such as a VPN, or can notify the attached function that supplemental restrictions apply while in the insecure area. More generally, this can be seen as an expansion of policy-based usage in that the usage rules for an individual attached function may be adapted at any time for any reason. Policies may be changed upon access request, during a session, or even during an exchange flow.


As noted, the present system and related method employ a centralized policy server 103 that includes network usage policy enforcement and decision making capabilities. It may also include the policy information database. Also as indicated, that functionality may be distributed throughout the infrastructure 101. As described below, for a distributed system example, devices both inside and outside network infrastructure 101 can optionally maintain policy information that affects their operation. Relatedly, the policy information may be stored in the centralized policy server 103, distributed, or stored or cached locally for rapid access and access permissions established by the designated policies.



FIG. 1 shows the dynamic policy function modules 108 as components of the devices of the infrastructure 101 for illustrative purposes only. The information representing the one or more dynamic policy sub-functions associated with a particular network device, or one or more network devices attached to a particular network device, may be preloaded into module 108 in the form of a policy database. The policy database at each device can be the entire policy database of network system 100, or a portion of that database. In particular, the portion of the database included in the module 108 of the device can be a portion associated with those connection points applicable to that particular device. For example, all of the connection points associated with the ports of a particular network entry device. Module 108 may include the table of FIG. 3 that is an updateable table that changes with additions or deletions of information, detected triggers, and static and dynamic policies. Additionally, a table of actual policy designations is preferably generated and may be stored or cached locally and called upon for subsequent sessions based on attached function information.


The following is a list of a few possible devices (but not limited to only those devices) that can contain the policy server and/or any one or more of the dynamic policy sub-functions: network switches, data switches, routers, firewalls, gateways, computing devices such as network file servers or dedicated usage servers, management stations, network connected voice over IP/voice over data systems such as hybrid PBXs and VoIP call managers, network layer address configuration/system configuration servers such as enhanced DHCP servers, enhanced Bootstrap Protocol (bootp) servers, IPv6 address auto-discovery enabled routers, and network based authentication servers providing services such as radius, extensible authentication protocol/IEEE 802.1X or others.


Additionally, the processes, steps thereof and various examples and variations of these processes and steps, individually or in combination, may be implemented as a computer program product tangibly as computer-readable signals on a computer-readable medium, for example, a non-volatile recording medium, an integrated circuit memory element, or a combination thereof. Such computer program product may include computer-readable signals tangibly embodied on the computer-readable medium, where such signals define instructions, for example, as part of one or more programs that, as a result of being executed by a computer, instruct the computer to perform one or more processes or acts described herein, and/or various examples, variations and combinations thereof. Such instructions may be written in any of a plurality of programming languages, for example, Java, Visual Basic, C, or C++, Fortran, Pascal, Eiffel, Basic, COBOL, and the like, or any of a variety of combinations thereof. The computer-readable medium on which such instructions are stored may reside on one or more of the components of system 100 described above and may be distributed across one or more such components.


The following examples may help illustrate the embodiment:


Example 1

To automatically detect all Avaya IP phones in a network, one could use this feature to look for any attached device with the Avaya OUI of “00-04-OD” and associate those devices to a restrictive role suitable for IP phones. Continuing dynamic policy management may then further modify the port policies.


Example 2

To detect all HP printers using JetDirect cards, the HP OUI could be used as a trigger. Possible policy assignments would be to allow LPR or other printing protocols at 5 MB/S, allow administrative protocols only from the network operations center IP addresses and finally prohibit all other protocols. The result is that the printer is manageable, useable and protected dynamically from all other attacks.


Example 3

To detect the attachment of an IP enabled Allen Bradley numerically controlled milling machine or other industrial systems, the presence of OUI “00-00-BC” would be enough to trigger a policy set appropriate for that type of system. Egress policies to that machine may be extremely tight allowing no packet for which older equipment may have known security vulnerabilities.


Example 4

Attachment of WiFi enabled IP phones need proper detection to give them access to real time service over an enterprise guest network. This is needed as these devices are not able to authenticate via traditional techniques, as a PC could, and therefore should be less trusted, but they require higher priority services for RTP and SIP than a user in the default guest role. OUI detection could allow for a slight over-ride of default policies without requiring complex authentication methods.


Example 5

Specific assignment of local addresses to devices with known security vulnerabilities would allow their use on a network system which could otherwise exploit those vulnerabilities. The network devices could cache policy and AUP assignments and enable them independent of any other authentication techniques or methods to insure both ingress and egress policies are in place immediately upon network connection. This would make it impossible to exploit known device vulnerabilities, even for the hacker who knows the device is present on the network.


A number of examples to help illustrate the embodiment have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the embodiment. Accordingly, other embodiments are within the scope of this embodiment.

Claims
  • 1. A method comprising: receiving a packet, by a network device, from an attached function that initiates network access on a distributed computing network, wherein the packet is received without errors with a valid source address in a source address field;acquiring source address block information from at least an OUI (Organization Unique Identifier) field of a MAC address or an IAB (Individual Address Block) address block for the attached function from the received packet, wherein the source address block information represents a subset of a total addressing capability;in response to acquiring the source address block information, obtaining stored policy information based, at least in part, on the source address block information;determining one or more policies based, at least in part, on the source address block information, wherein the one or more policies include one or more of an ingress and an egress policy, wherein the source address block information is used as a starting point in defining restrictive policies to securely protect network devices;setting, by the network device, the one or more determined policies; andtransmitting the packet from at least one port of the network device based, at least in part, on one or more of the determined ingress and egress policies which can further be dynamically refined based on additional network information besides the source address block information.
  • 2. The method of claim 1 wherein the address block information is obtained from an OUI field of a MAC address.
  • 3. The method of claim 1 wherein the address block information is an Individual Address Block (IAB) that defines 4,096 addresses.
  • 4. The method of claim 1 wherein the address block information at least partially defines the type of attached function.
  • 5. The method of claim 1 further comprising: acquiring additional policy information; andrevising the one or more policies based, at least in part, on the additional policy information.
  • 6. The method of claim 5 wherein acquiring additional policy information includes: dynamically creating policy information.
  • 7. The method of claim 5 wherein acquiring additional policy information includes: querying the attached function for policy information.
  • 8. The method of claim 5 wherein acquiring additional policy information includes: querying a network infrastructure for policy information.
  • 9. The method of claim 5 further comprising: monitoring network traffic to obtaining network traffic information; andrevising the one or more policies based, at least in part, on the network traffic information.
  • 10. The method of claim 5 wherein the additional policy information includes one or more of: attached function location information; attached function configuration information; attached function operating system information; attached function security features information; user location information; network entry port information, an address block; a user ID; a device type; a device location; an access device; an access location; a port type; a port speed; a number of users per port; a time of access; an application priority; an Ethernet protocol; a level of trust; a virus scan level; an operating system type; an operating system version; a change in network address; a time out event; a link change; a user initiated change; one or more devices changes; a device addition; a network service change; an access device change; an application access request; a protocol change; an additional wireless user; a bandwidth change; a routing link cost change; an RMON Event; a local dynamic policy change; and a remote dynamic policy change.
  • 11. A computer program product embodied on a non-transitory computer readable storage medium having a plurality of instructions stored thereon that, when executed by a processor, cause the processor to perform operations comprising: receiving a packet, by a network device, from an attached function that initiates network access on a distributed computing network, wherein the packet is received without errors with a valid source address in a source address field;acquiring source address block information from at least an OUI (Organization Unique Identifier) field of a MAC address or an IAB (Individual Address Block) address block for the attached function from the received packet, wherein the source address block information represents a subset of a total addressing capability;in response to acquiring the source address block information, obtaining stored policy information based, at least in part, on the source address block information;determining one or more policies based, at least in part, on the source address block information, wherein the one or more policies include one or more of an ingress and an egress policy, wherein the source address block information is used as a starting point in defining restrictive policies to securely protect network devices;setting, by the network device, the one or more determined policies; andtransmitting the packet from at least one port of the network device based, at least in part, on one or more of the determined ingress and egress policies which can further be dynamically refined based on additional network information besides the source address block information.
  • 12. The computer program product of claim 11 wherein the address block information is obtained from an OUI field of a MAC address.
  • 13. The computer program product of claim 11 wherein the address block information is an Individual Address Block (IAB) that defines 4,096 addresses.
  • 14. The computer program product of claim 11 wherein the address block information at least partially defines the type of attached function.
  • 15. The computer program product of claim 11 further comprising instructions for: acquiring additional policy information; andrevising the one or more policies based, at least in part, on the additional policy information.
  • 16. The computer program product of claim 15 wherein the instructions for acquiring additional policy information include instructions for: dynamically creating policy information.
  • 17. The computer program product of claim 15 wherein the instructions for acquiring additional policy information include instructions for: querying the attached function for policy information.
  • 18. The computer program product of claim 15 wherein the instructions for acquiring additional policy information include instructions for: querying a network infrastructure for policy information.
  • 19. The computer program product of claim 15 further comprising instructions for: monitoring network traffic to obtaining network traffic information; andrevising the one or more policies based, at least in part, on the network traffic information.
  • 20. The computer program product of claim 15 wherein the additional policy information includes one or more of: attached function location information; attached function configuration information; attached function operating system information; attached function security features information; user location information; network entry port information, an address block; a user ID; a device type; a device location; an access device; an access location; a port type; a port speed; a number of users per port; a time of access; an application priority; an Ethernet protocol; a level of trust; a virus scan level; an operating system type; an operating system version; a change in network address; a time out event; a link change; a user initiated change; one or more devices changes; a device addition; a network service change; an access device change; an application access request; a protocol change; an additional wireless user; a bandwidth change; a routing link cost change; an RMON Event; a local dynamic policy change; and a remote dynamic policy change.
  • 21. A system configured to perform operations comprising: receiving a packet, by a network device, from an attached function that initiates network access on a distributed computing network, wherein the packet is received without errors with a valid source address in a source address field;acquiring source address block information from at least an OUI (Organization Unique Identifier) field of a MAC address or an IAB (Individual Address Block) address block for the attached function from the received packet, wherein the source address block information represents a subset of a total addressing capability;in response to acquiring the source address block information, obtaining stored policy information based, at least in part, on the source address block information;determining one or more policies based, at least in part, on the source address block information, wherein the one or more policies include one or more of an ingress and an egress policy, wherein the source address block information is used as a starting point in defining restrictive policies to securely protect network devices;setting, by the network device, the one or more determined policies; andtransmitting the packet from at least one port of the network device based, at least in part, on one or more of the determined ingress and egress policies which can further be dynamically refined based on additional network information besides the source address block information.
  • 22. The system of claim 21 wherein the address block information is obtained from an OUI field of a MAC address.
  • 23. The system of claim 21 wherein the address block information is an Individual Address Block (IAB) that defines 4,096 addresses.
  • 24. The system of claim 21 wherein the address block information at least partially defines the type of attached function.
  • 25. The system of claim 21, wherein the system is further configured to perform operations comprising: acquiring additional policy information; andrevising the one or more policies based, at least in part, on the additional policy information.
  • 26. The system of claim 25 wherein acquiring additional policy information includes: dynamically creating policy information.
  • 27. The system of claim 25 wherein acquiring additional policy information includes: querying the attached function for policy information.
  • 28. The system of claim 25 wherein acquiring additional policy information includes: querying a network infrastructure for policy information.
  • 29. The system of claim 25, wherein the system is further configured to perform operations comprising: monitoring network traffic to obtaining network traffic information; andrevising the one or more policies based, at least in part, on the network traffic information.
  • 30. The system of claim 25 wherein the additional policy information includes one or more of: attached function location information; attached function configuration information; attached function operating system information; attached function security features information; user location information; network entry port information, an address block; a user ID; a device type; a device location; an access device; an access location; a port type; a port speed; a number of users per port; a time of access; an application priority; an Ethernet protocol; a level of trust; a virus scan level; an operating system type; an operating system version; a change in network address; a time out event; a link change; a user initiated change; one or more devices changes; a device addition; a network service change; an access device change; an application access request; a protocol change; an additional wireless user; a bandwidth change; a routing link cost change; an RMON Event; a local dynamic policy change; and a remote dynamic policy change.
RELATED APPLICATIONS

This application claims the priority of U.S. Provisional Application Ser. No. 60/599,626, entitled “System and Method for Address Block Enhanced Dynamic Network Policy Management”, and filed 6 Aug. 2004; which is herein incorporated by reference. This application is a continuation-in-part of U.S. patent application Ser. No. 11/066,622, filed 25 Feb. 2005, and entitled “DYNAMIC NETWORK DETECTION SYSTEM AND METHOD”; which is herein incorporated by reference.

US Referenced Citations (195)
Number Name Date Kind
4627052 Hoare et al. Dec 1986 A
4734907 Turner Mar 1988 A
4823338 Chan et al. Apr 1989 A
4939726 Flammer et al. Jul 1990 A
5076688 Bowen et al. Dec 1991 A
5090025 Marshall et al. Feb 1992 A
5095480 Fenner Mar 1992 A
5132926 MacEachem et al. Jul 1992 A
5136580 Videlock et al. Aug 1992 A
5173933 Garner et al. Dec 1992 A
5243652 Teare et al. Sep 1993 A
5289460 Drake, Jr. et al. Feb 1994 A
5331637 Francis et al. Jul 1994 A
5355371 Auerbach et al. Oct 1994 A
5355375 Christensen Oct 1994 A
5361256 Doeringer et al. Nov 1994 A
5367667 Wahlquist Nov 1994 A
5394402 Ross Feb 1995 A
5396493 Sugiyama Mar 1995 A
5400326 Smith Mar 1995 A
5428615 Backes et al. Jun 1995 A
5434855 Perlman et al. Jul 1995 A
5442633 Perkins et al. Aug 1995 A
5444702 Burnett et al. Aug 1995 A
5448565 Chang et al. Sep 1995 A
5475781 Chang et al. Dec 1995 A
5481540 Huang Jan 1996 A
5485455 Dobbins et al. Jan 1996 A
5491694 Oliver et al. Feb 1996 A
5500860 Perlman et al. Mar 1996 A
5506838 Flanagan Apr 1996 A
5511168 Perlman et al. Apr 1996 A
5517494 Green May 1996 A
5517620 Hashimoto et al. May 1996 A
5519760 Borkowski et al. May 1996 A
5521910 Matthews May 1996 A
5530703 Liu et al. Jun 1996 A
5550816 Hardwick et al. Aug 1996 A
5553083 Miller Sep 1996 A
5583861 Holden Dec 1996 A
5606602 Coyle et al. Feb 1997 A
5608726 Virgile Mar 1997 A
5613069 Walker Mar 1997 A
5621793 Bednarek et al. Apr 1997 A
5634011 Auerbach et al. May 1997 A
5640452 Murphy Jun 1997 A
5659617 Fischer Aug 1997 A
5675582 Hummel et al. Oct 1997 A
5684800 Dobbins et al. Nov 1997 A
5727057 Emery et al. Mar 1998 A
5734865 Yu Mar 1998 A
5740171 Mazzola et al. Apr 1998 A
5742604 Edsall et al. Apr 1998 A
5745685 Kirchner et al. Apr 1998 A
5752003 Hart May 1998 A
5754657 Schipper et al. May 1998 A
5757916 MacDoran et al. May 1998 A
5781726 Pereira Jul 1998 A
5781737 Schmidt Jul 1998 A
5790074 Rangedahl et al. Aug 1998 A
5812819 Rodwin Sep 1998 A
5825772 Dobbins et al. Oct 1998 A
5862338 Walker et al. Jan 1999 A
5874964 Gille Feb 1999 A
5881236 Dickey Mar 1999 A
5892451 May et al. Apr 1999 A
5892910 Safadi Apr 1999 A
5892912 Suzuki et al. Apr 1999 A
5898686 Virgile Apr 1999 A
5905779 Steinmetz May 1999 A
5920699 Bare Jul 1999 A
5922073 Shimada Jul 1999 A
5963556 Varghese et al. Oct 1999 A
5983364 Bortcosh Nov 1999 A
5999126 Ito Dec 1999 A
6005864 Krause Dec 1999 A
6006259 Adelman et al. Dec 1999 A
6012088 Li et al. Jan 2000 A
6018771 Hayden Jan 2000 A
6035105 McCloghrie et al. Mar 2000 A
6041166 Hart et al. Mar 2000 A
6044400 Golan et al. Mar 2000 A
6061797 Jade et al. May 2000 A
6070079 Kuwahara May 2000 A
6076114 Wesley Jun 2000 A
6078957 Adelman et al. Jun 2000 A
6085243 Fletcher et al. Jul 2000 A
6094434 Kotzur et al. Jul 2000 A
6105027 Schneider et al. Aug 2000 A
6105064 Davis et al. Aug 2000 A
6108365 Rubin et al. Aug 2000 A
6115754 Landgren Sep 2000 A
6122664 Boukobza et al. Sep 2000 A
6130890 Leinwand et al. Oct 2000 A
6131120 Reid Oct 2000 A
6151324 Belser et al. Nov 2000 A
6151631 Ansell et al. Nov 2000 A
6157647 Husak Dec 2000 A
6167275 Oros et al. Dec 2000 A
6167513 Inoue et al. Dec 2000 A
6192045 Williams Feb 2001 B1
6192403 Jong et al. Feb 2001 B1
6201789 Witkowski et al. Mar 2001 B1
6205126 Moon Mar 2001 B1
6212391 Saleh et al. Apr 2001 B1
6216159 Chintakrindi et al. Apr 2001 B1
6222840 Walker et al. Apr 2001 B1
6230018 Watters et al. May 2001 B1
6233242 Mayer et al. May 2001 B1
6236365 LeBlanc et al. May 2001 B1
6256338 Jalloul et al. Jul 2001 B1
6259404 Parl et al. Jul 2001 B1
6273622 Ben-David Aug 2001 B1
6286044 Aoyama et al. Sep 2001 B1
6304218 Sugiura et al. Oct 2001 B1
6308273 Goertzel et al. Oct 2001 B1
6317500 Murphy Nov 2001 B1
6327474 Ruutu et al. Dec 2001 B1
6327535 Evans et al. Dec 2001 B1
6343317 Glorikian Jan 2002 B1
6363422 Hunter et al. Mar 2002 B1
6370629 Hastings et al. Apr 2002 B1
6388618 Stilp et al. May 2002 B1
6421009 Suprunov Jul 2002 B2
6442394 Valentine et al. Aug 2002 B1
6442616 Inoue et al. Aug 2002 B1
6453237 Fuchs et al. Sep 2002 B1
6456853 Arnold Sep 2002 B1
6460084 Van Horne et al. Oct 2002 B1
6466786 Wallenius Oct 2002 B1
6480495 Mauger et al. Nov 2002 B1
6523064 Akatsu et al. Feb 2003 B1
6539229 Ali Mar 2003 B1
6542813 Kovacs Apr 2003 B1
6556831 Buppelmann Apr 2003 B1
6577636 Sang et al. Jun 2003 B1
6580914 Smith Jun 2003 B1
6583713 Bates Jun 2003 B1
6640184 Rabe Oct 2003 B1
6640248 Jorgensen Oct 2003 B1
6665715 Houri Dec 2003 B1
6701864 Watson et al. Mar 2004 B2
6716101 Meadows et al. Apr 2004 B1
6741863 Chiang et al. May 2004 B1
6757545 Nowak et al. Jun 2004 B2
6757740 Parekh et al. Jun 2004 B1
6771639 Holden Aug 2004 B1
6778818 O'Neil Aug 2004 B1
6795688 Plasson et al. Sep 2004 B1
6799049 Zellner et al. Sep 2004 B1
6807427 Sakamoto et al. Oct 2004 B1
6813501 Kinnunen et al. Nov 2004 B2
6826385 Kujala Nov 2004 B2
6826617 Ansell et al. Nov 2004 B1
6834195 Brandenberg et al. Dec 2004 B2
6859791 Spagna et al. Feb 2005 B1
6889051 Ogino et al. May 2005 B2
6889053 Chang et al. May 2005 B1
6920329 Kennedy et al. Jul 2005 B2
6934548 Gould et al. Aug 2005 B1
6937988 Hemkumar et al. Aug 2005 B1
6938096 Greschler et al. Aug 2005 B1
6983313 Korkea-Aho Jan 2006 B1
6985731 Johnson et al. Jan 2006 B1
7010583 Aizono et al. Mar 2006 B1
7089264 Guido et al. Aug 2006 B1
7120449 Muhonen et al. Oct 2006 B1
7136915 Rieger, III Nov 2006 B2
7139829 O'Toole et al. Nov 2006 B2
7197556 Short et al. Mar 2007 B1
20010022558 Karr, Jr. et al. Sep 2001 A1
20010039623 Ishikawa Nov 2001 A1
20020010866 McCullough et al. Jan 2002 A1
20020016831 Peled et al. Feb 2002 A1
20020023010 Rittmaster et al. Feb 2002 A1
20020034953 Tricarico Mar 2002 A1
20020046073 Indseth et al. Apr 2002 A1
20020051540 Glick et al. May 2002 A1
20020052180 Ravishankar et al. May 2002 A1
20020062379 Widegren et al. May 2002 A1
20020063656 Gutowski May 2002 A1
20020107029 Caughran et al. Aug 2002 A1
20020122055 Parupudi et al. Sep 2002 A1
20020138632 Bade et al. Sep 2002 A1
20020164996 Dorenbosch Nov 2002 A1
20020188842 Willeby Dec 2002 A1
20030035544 Herle et al. Feb 2003 A1
20030041167 French et al. Feb 2003 A1
20030065571 Dutta Apr 2003 A1
20030095509 Ramanan et al. May 2003 A1
20030107590 Levillain et al. Jun 2003 A1
20030185233 Ji et al. Oct 2003 A1
20030208523 Gopalan et al. Nov 2003 A1
20040064334 Nye Apr 2004 A1
20050199792 Argast et al. Sep 2005 A1
Foreign Referenced Citations (18)
Number Date Country
1154624 Nov 2001 EP
9428683 Dec 1994 WO
9705749 Feb 1997 WO
9741654 Nov 1997 WO
9819482 May 1998 WO
0022862 Apr 2000 WO
0044149 Jul 2000 WO
0067450 Nov 2000 WO
0069198 Nov 2000 WO
0108425 Feb 2001 WO
0122656 Mar 2001 WO
0169956 Sep 2001 WO
0176093 Oct 2001 WO
0182259 Nov 2001 WO
0194967 Dec 2001 WO
0195505 Dec 2001 WO
0209456 Jan 2002 WO
0212914 Feb 2002 WO
Related Publications (1)
Number Date Country
20060036730 A1 Feb 2006 US
Provisional Applications (1)
Number Date Country
60599626 Aug 2004 US
Continuation in Parts (1)
Number Date Country
Parent 11066622 Feb 2005 US
Child 11199552 US