# Patent

## Title
Role based router functionality

## Abstract

Configuration of firewall functionality for routers operating within a multi-router network is contemplated. The firewall functionality configured for one or more of the routers may be based router positioning within the multi-router network. The firewall functionality may be automatically selected according to the router positioning in order to facilitate dynamic and/or adaptive router configuring.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. provisional Application No. 61/712,318 filed Oct. 11, 2012, and U.S. provisional Application No. 61/771,807 filed Mar. 2, 2013, the disclosures of which are incorporated in their entirety by reference herein.


TECHNICAL FIELD
The present relates to configuring functionality for routers included within a multi-router network, such as but not necessary limited to facilitating will role based firewall where firewall functionality is dynamically varied according to router positioning within the multi-router network.
BACKGROUND
A multi-router network may be characterized as a network having a plurality of routers connected together and arranged in a logical hierarchy. With the launch of new services, such as but not limited to home security, IP video, Smart Grid, etc., and more consumer devices, such as but not limited to televisions, mobile phones, appliances, etc., being configured with routers, multi-router networks are becoming more prevalent. Multi-router networks require multiple routers to communicate with each other over network links, the establishment of messaging protocols, hierarchical relationships, address assignments, prefix delegations, security measures, backup capabilities and a potential number of additional functional capabilities in order to properly and securely govern network communications. As the prevalence of such multi-router networks continues to grow, one non-limiting aspect of the present invention contemplates a need to facilitate configuring routers to operate in such a complex environment.
Without intending to limit the scope of the present invention, and while not dispositive of environments where a need may exist to facilitate configuring routers, one non-limiting aspect of the present invention foresees a particular need in facilitating configuration of routers employed in small office and home office (SoHo) environments. SoHo and similar environments may employ routers having off-the-shelf, default, pre-configured and/or consumer-level configurations where the corresponding routers may be commonly referred to as home Internet Protocol (IP) network (HIPnet) routers. Such pre-configurations may thwart inter-router communications and other operations associated with facilitating use and/or construction of a multiple-router network. Default firewall and/or network address translator (NAT) setting of such HIPnet routers may particularly disrupt inter-router communications, particularly communications from one subnet to another. Accordingly, one non-limiting aspect of the present invention contemplates facilitating configuration of HIPnet or other types of pre-configured routers for use in multi-router networks.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a role based router system in accordance with one non-limiting aspect of the present invention.
FIG. 2 illustrates a router having role based features in accordance with one non-limiting aspect of the present invention.
FIG. 3 illustrates a flowchart for a method of facilitating role based router functionality in accordance with one non-limiting aspect of the present invention.



DETAILED DESCRIPTION
As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale; some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the present invention.
FIG. 1 illustrates a role based router system 10 in accordance with one non-limiting aspect of the present invention. The system 10 illustrates one exemplary configuration where a delegating router 12 associated with an outside network 14 provides a prefix 16 (first prefix) to a requesting router 18 for delegation within an inside network 20. The prefix 16 may be any suitable addressing prefix, such as but not necessarily limited to an Internet Protocol version 6 (IPv6) prefix and an Internet Protocol version 4 (IPv4) prefix. The present invention is predominately described with respect to use of IPv6 without necessarily intending to limit the scope of the present invention. Dynamic Host Configuration Protocol (DHCP), such as that described in Internet Engineering Task Force (IETF) request for comment (RFC) 2131, 3315 and 3633, the disclosures of which are hereby incorporated by reference in their entireties, or other suitable delegation processes may be employed to facilitate delegating the first prefix to the requesting router 18. The requesting router 18 may be configured to facilitate adaptively delegating the first prefix 16 to additional routers associated with the inside network 20, such as in the manner described in U.S. patent application Ser. No. 13/783,242, the disclosure of which is hereby incorporated by reference in its entirety.
The outside network 14 and the inside network 20 demonstrate one exemplary, non-limiting use of the present invention where a multiple system operator (MSO), Internet service provider (ISP) or other type of service provider is allocated a prefix or addressing domain by a suitable addressing entity to facilitate Internet-based messaging or other network-based messaging. The inside network 20 is shown to be distinguished from the outside network 14 to demonstrated one use case where an MSO may be tasked with facilitating messaging for a plurality of inside networks, such as but not necessarily limited to home networks or other internal networks associated with its subscribers. While only one inside network 20 is illustrated, the MSO may be responsible for facilitating prefix delegation with any number of inside networks or other downstream connected networks. The requesting router 18, which may be periodically referred to herein as a customer edge router (CER) or edge router (ER) where routers connected downstream may be periodically referred to herein as internal routers (IRs). Optionally, the ER, IRs and/or devices may be configured to receive multiple prefixes, such as in the manner described in U.S. patent application Ser. No. 13/754,954, the disclosure of which is hereby incorporated by reference in its entirety.
A five layer architecture is shown to correspond with a first layer having the ER, a second layer having one or more IRs connected directly to the ER, a third layer having one or more IRs and/or devices connected to one of the second layer IRs, a fourth layer having one or more IRs and/or devices connected to one of the third layer IRs, and a fourth layer having one or more devices connected to one of the fourth layer IRs. The IRs and/or devices are shown to be connected to a single upstream ER or IRs as such devices may be configured to listen to no more than one delegating router/device on a link (solid lines) in order to comply with DHCP requirements. The single-connection of each component is shown for exemplary non-limiting purposes as the present invention fully contemplates the inside network having any number of configurations and interconnections between the ER, IRs and/or devices. The interconnections between the ER, IRs and devices are shown to correspond with wireline connections but may be similarly interconnected using wireless, radio frequency (RF), Bluetooth or other wireless types of links. One non-limiting aspect of the present invention contemplates the ER and/or the IRs being HIPnet routers or other consumer-level routers having off-the-shelf, default, pre-configured and/or consumer-level configurations.
In the event HIPnet routers, or other similarly pre-configured routers, interconnect to form the inside network, the inside network may be considered as a multi-router network or a SoHo network. One non-limiting aspect of the present invention contemplates a need to facilitate configuring capabilities and/or functionality of such routers to support inter-router communications within the multi-router network, including when such routers are deployed by network novices or other individuals lacking ability or desire to program, adjust or otherwise manipulating router functionality to communicate with each other over network links and/or to establish messaging protocols, hierarchical relationships, address assignments, prefix delegations, security measures, backup capabilities and a potential number of additional functional capabilities desired to properly and securely govern network communications. One non-limiting aspect of the present invention contemplates a role based router feature, such as but not necessary limited to a computer program product, having capabilities to automatically, adaptively and/or dynamically facilitate selection of desirable router functionality. The computer program product may be embedded in a non-transitory computer readable medium storing instructions, which when operable with a processor or other logically executing device, are sufficient for configuring router functionality.
FIG. 2 illustrates an exemplary router 32 deployed within the system 10 having role based features 32 in accordance with one non-limiting aspect of the present invention. The role based features 32 are shown to correspond with a functionality module 34, a position detection module 36 and a security profile selection module 38, although other configurations and/or modules may be included without deviating from the scope and contemplation of the present invention. The modules 34, 36, 38 may be associated with a processor (not shown) to facilitate executing operations according to instructions stored in a computer-readable medium (not shown) or the modules 34, 36, 38 may be otherwise associated with the router 30 to facilitate the contemplated operations. Optionally, the modules 34, 36, 38 may be part of or embodied in a computer program product installable on the router 30 prior to deployment, downloaded thereto as part of the DHCP provisioning or other provisioning associated within initially providing internet access or access to other provider services, and/or included within a controller operable within the multi-router network 20 to facilitate router provisioning and functionality limitation. The modules 34, 36, 38 and/or other logically executing features contemplated by the present invention may be used facilitate automatically configuring functionality of the routers 30 deployed in the multi-router network 20 to automatically, adaptively and/or dynamically facilitate selection of desirable router functionality.
The router 30 shown to include one or more of up interfaces 40 and one or more down interfaces 42. The router 30 may be a directionless router having a plurality of receptacles configured to facilitate connection to cables or other wired communication mediums used to communicate signals between other routers 30 within the multi-router network and/or wireless interfaces to perform some operations. The interfaces 34, 36, 38 may be adaptively assigned to an up direction and a down direction depending on positioning of the corresponding router within the multi-router network 20. The router 30 may include a directional processing feature (not shown), such as but not necessary limited to that described in U.S. patent application Ser. No. 13/792,023, entitled Interface Directionality Assignment, filed Mar. 9, 2013, the disclosure of which is hereby incorporated by reference in its entirety, to facilitate assigning up/down directionality to each of the interfaces 34, 36, 38. While not intending to limit the scope and contemplation of the present invention and/or the positioning or hierarchical relevance of the corresponding router, the up interface(s) 40 may be associated with or characterize as a wide area network (WAN) interface and the down interface(s) 42 may be associated with or characterize as a local area network (LAN) interface. The router 30 may be configured to route messages, signaling and other information between the up interface(s) 40 and the down interface(s) 42, with signaling traveling in a downstream direction from the up interface(s) 40 to the down interface(s) 42 and upstream direction from the down interface(s) 42 to the up interface(s) 40.
The signaling traveling between the up interface(s) 40 and the down interface(s) 42 may be processed according to functionality associated with the router 30. For exemplary non-limiting purposes, the functionality is illustrated with respect to a firewall. The firewall may be part of a functionality controller 34 configured to process, control and otherwise manipulate data packets (messages, signaling, etc.) passed between the interfaces. The firewall may be configured to block, transmit, process or otherwise manipulate signaling between the up interface(s) 40 in the down interface(s) 42 according to various settings and configurations. The firewall demonstrates one use of the present invention to facilitate automatically configuring firewall functionality according to various parameters associated with the multi-router network 20. Optionally, the firewall functionality may be selected according to a logical positioning of the corresponding router 30 within the multi-router network 20 in order to ensure desired inter-router communications and network security. While the firewall is illustrated, the present invention is not necessary limited to configuring firewall functionality and fully contemplates configuring other router functionality, including that described below in more detail. Configuring firewall functionality is believed to be particularly beneficial at least in that HIPnet routers or other pre-configured routers may include default or pre-set firewall functionality that can prevent desirable inter-router communications if not properly adjusted upon router deployment within the multi-router network.
The firewall may be considered as a stateful firewall, such as that described in RFC 6092, the disclosure of which is hereby incorporated by reference in its entirety. The stateful firewall may facilitate stateful packet inspection (SPI) to selectively inspect and permit or deny transmission therethrough of packets or other information data types depending on state of network connections, content, addresses and/or other information illustrative of the corresponding source/destination or otherwise reflective of the data transmission. The inspected information may be compared against a permitted set of information, database, signatures or other filtering related parameters to assess whether passage should be granted. The firewall may be deployed in a “default” state where packets other than those associated with an outgoing communication, i.e., a communication initiated from the router to an upstream device and/or router are blocked. The blocking of non-outgoing or upstream originating signaling may effectively prevent communications between routers (ER, IRs) and/or devices connected within the SoHo network (multi-router network) 20, including those connected to different subnets or links. This inability to support inter-router communications “out of the box” can be particularly problematic to consumers attempting to use routers, devices having routers and/or devices within a multi-router network.
The firewall may be operable between an enabled state where stateful protection blocks all but upstream originating signaling and a disabled state where all signaling, including upstream originating signaling, is permitted, such as by turning “off” the firewall protection. One non-limiting aspect of the present invention contemplates the position detection module 36 determining a positioning of the router 30 within the multi-router network 20 and selectively enabling and disabling the stateful firewall depending on the determined position. This may include the security profiles selection module 38 having a set of rules for specifying enablement/disablement of the firewall and/or other functionality of the router 30 according to its determined position. The security profile selection module 38 may include an edge security profile, an internal security profile or other position based profiles. The profiles may define a corresponding set of instructions, commands or other controls sufficient to achieve the desired functionality settings. Optionally, the instructions, etc., associated with the security profiles may be stored on the router 30 as a part of the computer program product, application, software or other control mechanism of the router 30. The present invention is predominately described with respect to the security profiles defining edge instructions and internal instructions for dictating functionality depending on whether the router 30 is characterized as an ER or an IR without intending to limit the scope and contemplation of the present invention as other positional characterizations are contemplated.
The positioning detection module 36 may be configured to determine positioning of the router or its role within the multi-router network, i.e., whether the router is an ER or an IR, as a function of messaging and/or addressing associated with assigning the router an address and/or a prefix. The role may be determined by performing a “48 check”, a DHCPv6 CER-ID option and/or another type positional determination, such as but not limited to a physical determination. The “48 check” may correspond with the position detection module 36 comparing the first 48 bits of the assigned IA_NA to the first 48 bits of the assigned IA_PD such that the router is determined to be an IR if the first 48 bits of each match and an ER if the first 48 bits fail to match. For example, if IA_NA/SLAAC is in a different /48 from the IA_PD, the router may be determined to be an ER, and if IA_NA/SLAAC is in the same /48 as its IA_PD, the router may be determined to be and IR.
The DHCPv6 CER-ID option may correspond with the position detection module 36 e utilizing a DHCPv6 option to identify whether the router is an ER, and if not then determining the router to be an IR. The DHCPv6 option may operate on the assumption that an ER sets a CER_ID (DHCPv6 option) to the IPv6 address of its LAN interface. If it has more than one LAN IPv6 address, it selects one of its LAN or loopback IPv6 addresses to be used in the CER_ID. An ISP server does not respond with the CER_ID or sets the CER_ID to ::, whereby receipt of such a response indicates to the router is an ER and the failure to receive such a response indicates the router is an IR. In more detail, a DHCPv6 client may be configured to include the CER Identification option code in an Option Request option in its DHCP Solicit messages. The DHCPv6 server (delegating router) may include the CER Identification option in any response it sends to a client (requesting router) that has included the CER Identification option code in an Option Request option. The CER Identification option may be sent in the main body of the message to client, not as a sub-option in, e.g., an IA_NA, IA_TA option. When sending the CER Identification option, the DHCPv6 server (delegating router) may set the CER_ID value to either one of its IPv6 addresses or ::. If a device (router) does not receive the CER Identification Option or receives a CER ID of :: from the DHCPv6 server, it may include one of its Globally Unique IPv6 address(es) in the CER_ID value in response to DHCPv6 messages received by its DHCPv6 server that contains the CER Identification option code in an Option Request option. If the device has only one LAN interface, it may use its LAN IPv6 address as the CER_ID value. If the device has more than one LAN interface, it may use the lowest Globally Unique address not assigned to its WAN interface.
The physical determination may be based on some routers 30 having a physical differentiator built into them by design that will indicate that they are a ER. Examples include mobile routers, DSL routers, and cable eRouters. In the case of a mobile router, the presence of an active cellular connection indicates that the router 30 is at the customer edge. Likewise, for an eRouter, the presence of an active DOCSIS link tells the router that it is at the customer edge. HIPnet routers and others may use more than one of the above techniques in combination to determine the edge. For example, an internal router may check for the CER_ID option, but may also use the 48 check in case its upstream router does not support CER_ID.
In addition to the foregoing positional determination mechanisms, the present invention fully contemplates the use of other processes and/or features for routers 30 to determine the relative positioning within the logical hierarchy of a multi-router network 20. While contemplated, the positioning or hierarchical relevance of each router 30 may be determined without use of a routing protocol, such as Routing Information Protocol (RIP) and the Open-Shortest-Path-First protocol (OSPF), the disclosures of which are hereby incorporated by reference. The routing protocol may correspond with routing tables and other information provided to the router 30 to facilitate determining the relative position within the multi-router network. The routing tables may define routes between each one or more of the routers (ER, IRs) and/or known to the routers such that the receiving router 30 is then responsible for comparing the tables to determine its relative positioning. The capability of the present invention to facilitate positional determinations without use of such routing protocols may be advantageous with routers 30 that may not be configured with capabilities to process such routing tables, within environments where it may be difficult or impossible to provide desired routing tables to the routers 30 and/or to facilitate implementation of the contemplated role based router functionality selection without having to update or comply with routing protocol requirements.
While the foregoing utilizes positional determinations to facilitate selectively enabling and disabling firewall functionality, the present invention fully contemplates using positional determinations to facilitate implementing additional functionality in addition to or in place of the firewall functionality according to other rules or instructions set forth in a corresponding one of the security profiles. The router 30, for example, may be configured with a default or pre-set network address translator (NAT) parameter, particularly if the router is and IPv4 router or a dual stack router, i.e., a router having IPv4 and IPv6 capability, whereby the default setting of the NAT parameter may thwart desired inter-router communications. The NAT parameters, similarly to the firewall parameter, may be set according to security profile roles depending on whether the corresponding router is and ER or and IR, e.g., the NAT may be disabled when the router 30 is an IR and enable when the router is an ER. Additional role based policies may include:

    
    
        An ER rule denying incoming traffic on its WAN interface 40 (except DHCP, Neighbor Discovery, ICMP, or pre-established TCP, UDP, or multicast streams, which may be subscriber selectable);
        An ER rule blocking outgoing Port Control Protocol (PCP) and UPnP IGD messages on its WAN interface 40, except for a default list (e.g. peer-to-peer, SIP/VoIP, gaming, and http), which may be subscriber selectable;
        An ER rule blocking site-scoped multicast messages from being sent to the WAN 40, while IRs forward site-scoped multicast messages out all interfaces 40, 42 (optionally, provided they pass a Reverse Path Forwarding check);
        An IR rule enabling full support for PCP MAP messages. That is, the IR serves as a PCP server for all MAP messages, not just a limited subset;
        An IR rule enabling operation as a UPnP/PCP gateway;
        An IR rule enabling “Simple Security”, such as that described in RFC 6092;
        An IR rule enabling “Advanced Security”, such as that described in I-D.vyncke-advanced-ipv6-security, the disclosure of which is hereby incorporated by reference in its entirety, which may optional provide Intrusion Detection/Intrusion Protection; and/or
        A special IR connecting rule enabling a “medium trust” network (e.g. SmartGrid) to filter PCP messages from the inside network to the special security zone network. The special security zone can be identified by ULA address space not used in the internal network.
    
    


Within the illustrated multi-router network 20, it may desirable for the routers 30 to be equipped with stateful firewall capabilities. Such routers may provide “on by default” security where incoming traffic is limited to return traffic resulting from outgoing packets. It may also be desirable to allow users to create inbound ‘pinholes’ for specific purposes, such as online gaming, manually similar to those described in Simple Security. “Advanced Security” features optionally may be used to support the concept of end-to-end IPv6 reachability and could be added to provide intrusion detection (IDS/IPS) support. Local Network Protection for IPv6 (RFC4864), the disclosure of which is hereby incorporated by reference in its entirety, may be used to facilitate firewall functions that replace NAT security and calls for simple security. The present invention recommends that the ER enable a firewall by default and that IRs have at least one of the three options described below:

    
    
        IR Firewall Option 1—Filtering Disabled: Once a home router determines that it is not the CER, it disables its firewall and allows all traffic to pass. The advantages of this approach is simple and easy to troubleshoot and it facilitates whole-home service discovery and media sharing. The disadvantages are that it does not protect home devices from each other (e.g. infected machines could affect entire home network).
        IR Firewall Option 2—Simple Security+PCP: Home routers may have a stateful firewall on by default, regardless of CER/IR status but IRs allow “pin-holing” using PCP I-D.ietf-pcp-base, the disclosure of which is hereby incorporated by reference in its entirety. CERs can restrict opening PCP pinholes on the up interface. The advantages of this approach may be that it protects the home network from internal threats in other LAN segments and it mirrors legacy IPv4 router behavior. The disadvantages to this approach may be that it is less predictable; it relies on application “pin-holing”, a “default deny” rule that may interfere with service discovery and/or content sharing, and requires PCP clients (e.g. on PCs and CPE devices).
        IR Firewall Option 3—Advanced Security: Once a home router determines that it is not the CER, it may disable its stateful firewall and activate a firewall (IPS). The advantages to this approach may be that it protects the home network from internal threats in other segments and is more predictable than Option 2, since internal traffic is allowed by default. The disadvantages may be that adaptive filtering is more complex than static filtering and may require a “fingerprint” subscription to work well.
    
    


Of course, while the foregoing describes recommended router behavior, device manufacturers and/or software providers may leverage the capabilities of the present invention to facilitate role based router functionality implementation, optionally according to positional determinations, to specify additional security profiles and to make router security options user configurable.
FIG. 3 illustrates a flowchart 50 for a method of facilitating role based router functionality in accordance with one non-limiting aspect of the present invention. The method may be used to facilitate automatically configuring routers deployed within a multi-router network or other logical hierarchy defined by physical and/or wireless connectivity according to the roles played by each router. The method is predominately described with respect to the router roles being based on relative router positioning, which for exemplary non-limiting purposes is assumed to correspond with one of an internal position and an edge position. The internal position is characterized as the corresponding router being an IR having a wireline or wireless upstream connection either directly to an ER or another IR. The edge position is characterized as the corresponding router being an ER having a wireline or wireless upstream connection to a router outside of the multi-router network, such as that associated with an ISP, MSO or other service provider (e.g. a cable, satellite or broadcast television service provider; a cellular phone service provider, a voice over Internet protocol (VoIP) service provider; a content streaming/downloading source; etc.).
Blocks 52, 54 relates to determining router positioning. The routers may individually determine router positioning upon being connected within the multi-router network. The router positioning, for example, may be determined as a function of addressing or other messaging information provided to the connecting router upon establishing a connection within the multi-router network. Optionally, the routers may be instructed as to the relative positioning by a controller, network administrator or other features associated with the multi-router network. One non-limiting aspect the present invention contemplates the routers individually determining router positioning by comparing addressing bits, such as that associated with an IA_NA and IA_PD provided thereto and/or as a function of a CER_ID option. The router positioning determination may not necessarily be dispositive of the routers position relative to other similarly characterize routers, i.e., the router positioning inquiry may simply confirm whether the router is an ER or an IR. Once the router determines itself to be an IR, and while contemplated to do so, additional determinations regarding the router's positioning relative to other IRs need not be performed, which can be beneficial in ameliorating processing demands on the router.
Block 56 relates to configuring IR role based router functionality for the router after the router positioning determines the router to be an IR. The IR role based router functionality may be implemented according to an internal security profile stored on the router and/or provided thereto. The internal security profile may include roles, instructions, commands and/or other information associated with facilitating automatic configuration of the router according to desired role based functionality. The internal security profiles may specify a plurality of internal instructions sufficient for automatically controlling the router to implement the desired functionality, such as to facilitate setting firewall, NAT and/or other capabilities of the router without requiring corresponding user interaction or programming of the router. Optionally, the configuring the IR role based functionality may include directing implementation of multiple functional capabilities according to a plurality of internal rules and/or profiles associated with the IR positioning determinations, which be beneficial to facilitate implementing non-security and/or non-networking parameters for the router.
Block 58 relates to determining a positional change in the IR. The positional change may corresponding with a role of the router changing with the home network, such as in the event the router changes from an IR to an ER and/or if the router changes IR positions from one portion or subnet to another portion of subnet of the multi-router network. While the particular IR router positioning or subnet need not necessarily be determined, in the event certain internal router profiles are provided for certain portions or subnets (e.g. to set different security parameters for certain portions of the network), such a determination may be implemented in order to implement correspondingly specific role based functionality. The router may also change from an IR characterization to an ER characterization in the event multi-homing occurs, the previously determined ER fails or requires temporary use of one of the IRs for backup, a change in hierarchical relationship is implemented and/or a connection of the IR not available to a previously determined ER is required to facilitate communications. In the event these or other positional changes are determined, Block may be returned to facilitate implementation of corresponding role based functionality.
Block 60 relates to determining the router to be in the edge position and assessing whether additional edge positioned routers are active within the multi-router network. The assessment of Block 60 may be an optional step to check whether the prefix delegation processing and/or addressing assignment properly constructed the multi-router network to include a single ER or at least a single ER for the type of services, network, etc. being performed with the router attempting to implement role based functionality (e.g., the multi-router network may have virtual networks, tunnels, etc. that allow the use of multiple ERs for the corresponding services). Block 62 is reached in the event multiple edge positioned routers are determined to be in conflict to facilitate generating an error message or implementing other corrective action. In the event the multi-router network prevents multiple routers from being characterized as edge positioned and/or the router is unable to make such an assessment (e.g., the router may be unable to make such an assessment without utilizing router protocols), Block 60 may be bypassed in favor of directly proceeding to Block 64.
Block 64 relates to configuring IR role based router functionality for the router after the router positioning determines the router to be an ER. The ER role based router functionality may be implemented according to an edge security profile stored on the router and/or provided thereto. The edge security profile may include roles, instructions, commands and/or other information associated with facilitating automatic configuration of the router according to desired role based functionality. The edge security profiles may specify a plurality of edge instructions sufficient for automatically controlling the router to implement the desired functionality, such as to facilitate setting firewall, NAT and/or other capabilities of the router without requiring corresponding user interaction or programming of the router. Optionally, the configuring the IR role based functionality may include directing implementation of multiple functional capabilities according to a plurality of edge rules and/or profiles associated with the ER positioning determinations, which be beneficial to facilitate implementing non-security and/or non-networking parameters for the router. Block 66 relates to performing a positional change assessment for the ER similar to the manner described in Block 58.
As supported above, one non-limiting aspect of the present invention contemplates facilitating firewall functionality on a home router that changes based on the role played by the router (e.g. whether it is at the customer edge or internal to the network). The process is contemplated by the present invention may be beneficial in providing security throughout the home network, while providing extra protection at the edge. This may enable enhanced communication within the home, while also securing the home from unwanted attack.
While exemplary embodiments are described above, it is not intended that these embodiments describe all possible forms of the invention. Rather, the words used in the specification are words of description rather than limitation, and it is understood that various changes may be made without departing from the spirit and scope of the invention. Additionally, the features of various implementing embodiments may be combined to form further embodiments of the invention.

## Claims

1. A method for automatically configuring firewall functionality within a multi-router network, the multi-router network including a plurality of routers arranged in a logical hierarchy, the method comprising:
determining a first position within the logical hierarchy for a first router of the plurality of routers, the first position being one of an edge position and an internal position, the edge position being determined when a wide area network (WAN) interface of the first router connects to another router outside of the multi-router network and the internal position occurring when the WAN interface of the first router connects to a local area network (LAN) interface of another router inside the multi-router network;
configuring firewall functionality for the first router according to an edge security profile if the first router is determined to be in the edge position and according to an internal security profile if the first router is determined to be in the internal position, the edge security profile defining the firewall functionality according to a plurality of edge security rules and the internal security profile defining the firewall functionality according to a plurality of internal security rules, the internal security rules having one or more rules different than the edge security rules;
storing both of the edge security profile and the internal security profile on the first router prior to determining whether the first router is in the first and second positions; and
defining the edge security rules to include:
i) a first edge rule for denying incoming traffic on the WAN interface except for DHCP, Neighbor Discovery, ICMP, or pre-established TCP, UDP, and/or multicast streams;
ii) a second edge rule for blocking outgoing Port Control Protocol (PCP) and UPnP IGD messages on the WAN interface except for a default list for peer-to-peer, SIP/VoIP, gaming, and/or http; and
iii) a third edge rule for blocking site-scoped multicast messages from being sent to the WAN interface.

2. The method of claim 1 further comprising determining the first position automatically from addressing related information communicated to the first router over the multi-router network.

3. The method of claim 1 further comprising:
determining the first router to have changed from the first position to a second position within the multi-router network when the WAN interface is disconnected from the another router outside of the multi-router network and subsequently connected to a LAN interface of another router inside the multi-router network, the first position being associated with the edge position and the second position being associated with the internal position;
re-configuring firewall functionality for the first router from the edge security profile to the internal security profile after determining the first router to have changed from the first position to the second position.

4. The method of claim 3 further comprising configuring the firewall functionality for the first router by one of enabling and disabling a stateful firewall of the first router, including enabling the stateful firewall when the first router is determined to be in the first position and disabling the stateful firewall when the router is determined to be in the second position.

5. The method of claim 4 further comprising configuring the firewall functionality for the first router by also one of enabling and disabling a network address translator (NAT) of the first router, including enabling the NAT when the first router is determined to be in the first position and disabling the NAT when the router is determined to be in the second position.

6. The method of claim 1 further comprising defining one or more of the internal security rules to include:
a first internal rule for enabling the first router to act as a UPnP/PCP gateway;
a second internal rule for enabling simple security;
a third internal rule for providing intrusion detection and/or intrusion protection; and
a fourth internal rule for filtering PCP messages from the multi-router network to a special security zone network.

7. The method of claim 1 further comprising:
determining a second position within the logical hierarchy for a second router of the plurality of routers to be one of the edge and internal positions;
configuring firewall functionality for the second router as a function of the second position, including configuring the firewall functionality for the second router according to the edge security profile if the second router is determined to be in the edge position and according to the internal security profile if the second router is determined to be in the internal position.

8. The method of claim 7 further comprising:
preventing the first router and the second router from implementing firewall functionality according to the edge security profile in the event both of the first router and the second router are determined to be in the edge position;
permitting both of the first router and the second router to implement firewall functionality according to the internal security profile in the event both of the first router and the second router are determined to be in the internal position; and
implementing firewall functionality for the first router according to one of the edge and internal security profiles and the second router according to the other one of the edge and internal security profiles in the event one of the first router and the second router is determined to be in the edge position and the other one of the first router and the second router is determined to be in the internal position.

9. The method of claim 7 further comprising generating an error when the first and second routers are both determined to be in the edge position.

10. A computer program product embedded in a non-transitory computer readable medium, the medium storing instructions sufficient for use with a processor to facilitate configuring firewall functionality for a router when deployed within a multi-router network having a plurality of routers, the medium including instructions sufficient for:
determining the router positioning after being deployed within a logical hierarchy of the multi-router network, the router positioning being determined to be one of an edge position and an internal position;
implementing firewall functionality according to an edge security profile when the router positioning is determined to be the edge position and according to an internal security profile when the router positioning is determined to be the internal position, the router being pre-loaded with the edge and internal security profiles prior to being deployed within the multi-router network; and
defining the edge security profile to include:
i) a first edge rule for denying incoming traffic on an wide area network (WAN) interface of the router except for DHCP, Neighbor Discovery, ICMP, or pre-established TCP, UDP, and/or multicast streams;
ii) a second edge rule for blocking outgoing Port Control Protocol (PCP) and UPnP IGD messages on the WAN interface except for a default list for peer-to-peer, SIP/VoIP, gaming, and/or http; and
iii) a third edge rule for blocking site-scoped multicast messages from being sent to the WAN interface.

11. The computer program product of claim 10 wherein the medium includes instructions sufficient for enabling stateful firewall functionality if the router positioning corresponds with the edge position and for disabling stateful firewall functionality if the router positioning corresponds with the internal position.

12. The computer program product of claim 11 wherein the medium includes instructions sufficient for implementing the internal security profile to include at least the following firewall functionality options:
disabling filtering;
implementing simple security and PCP; and
implementing advanced security.

13. The computer program product of claim 10 wherein the medium includes instructions sufficient for implementing the firewall functionality according to a default profile prior to determining the router positioning to be the edge position or the internal position, the router being pre-loaded with the default profile prior to being deployed within the multi-router network, the default profile enabling the router to pass outgoing communications and to block upstream originating communications.

14. A router comprising:
a plurality of interfaces configured for routing data packets, including at least one up interface and at least one down interface;
a position detection module executed by one or more hardware processors to detect an initial position of the router within a multi-router network to be one of an edge position and an internal position;
a profile selection module executed by one or more hardware processors to select a functionality profile from a plurality of functionality profiles based on the initial position determined with the position detection module, the plurality of functionality profiles including at least an edge profile and an internal profile stored on the router prior to determining the initial position;
wherein the profile selection module defines the edge profile to include:
i) a first edge rule for denying incoming traffic on an wide area network (WAN) interface of the at least one up interface except for DHCP, Neighbor Discovery, ICMP, or pre-established TCP, UDP, and/or multicast streams;
ii) a second edge rule for blocking outgoing Port Control Protocol (PCP) and UPnP IGD messages on the WAN interface except for a default list for peer-to-peer, SIP/VoIP, gaming, and/or http; and
iii) a third edge rule for blocking site-scoped multicast messages from being sent to the WAN interface
a functionality controller executed by one or more hardware processors to control packet passage between the interfaces according to the functionality profile selected with the profile selection module, including controlling packet passage according to the edge profile when the router is in the edge position and according to the internal profile when the router is in the internal position.

15. The router of claim 14 wherein:
the position detection module is configured for determining a first positional change and a second positional change after determining the initial position, the first positional change corresponding with the router changing positions within the multi-router network from the edge position to the internal position and the second positional change corresponding with the router changing positions within the multi-router network from the internal position to the edge position; and
the profile selection module implements the internal profile when the first positional change is determined and implements the edge profile when the second positional change is determined.

16. The router of claim 15 wherein the position detection modules is configured for delaying determining the first and second positional changes until a positional event occurs after determining the initial position, the positional event corresponding with one of the plurality of interfaces being disconnected.

17. The router of claim 14 wherein the position detection module is configured to determine whether any additional routers within the multi-router network are within the edge position upon determining the router to be in the edge position and to generate an error message when at least one additional router is also determined to be in the edge position.

18. The router of claim 14 wherein:
the plurality of interfaces include at least the WAN interface and a local area network (LAN) interface;
the plurality of functionality profiles includes at least a default profile, the default profile:
i) preventing the router from passing packets from the WAN interface to the LAN interface; and
ii) enabling the router to pass packets from the LAN interface to the WAN interface; and
the profile selection module is configured to implement the default profile while the router is operably deployed within the multi-router network prior to the positional detection module determining the initial position.