Table Of Contents
Related Features and Technologies
Supported Standards, MIBs, and RFCs
Monitoring and Maintaining the DFP Agent Subsystem Feature
DFP Agent Subsystem
Feature History
This document describes the Dynamic Feedback Protocol (DFP) Agent Subsystem feature in Cisco IOS Release 12.1(8a)E. It includes the following sections:
•
Supported Standards, MIBs, and RFCs
•
Monitoring and Maintaining the DFP Agent Subsystem Feature
Feature Overview
The Dynamic Feedback Protocol (DFP) enables a DFP agent in a local load-balancing environment to collect status information from one or more real host servers, convert the information to relative weights, and report the weights to a DFP manager, such as an IOS Server Load Balancing (SLB) device. The DFP manager factors in the weights when load balancing the real servers. DFP also supports global load-balancing environments, with IOS SLB reporting weights to DistributedDirector. For more information about DFP, see the IOS Server Load Balancing feature module.
Prior to 12.1(8a)E, the DFP agent was implemented only in IOS SLB. The new DFP agent subsystem feature enables client subsystems other than IOS SLB to act as DFP agents. However, currently IOS SLB is the only supported subsystem. You can use multiple DFP agents from different client subsystems at the same time.
The DFP Agent Subsystem is bundled with the IOS SLB and GGSN products, it is not available separately.
Benefits
The DFP agent subsystem enables client subsystems other than IOS SLB to act as DFP agents, sending weights to a DFP manager.
Restrictions
The DFP agent subsystem has the following restrictions:
•
The DFP agent requires a delay between hello messages of at least 3 seconds. Therefore, if your DFP manager provides a timeout specification, you must set the timeout to at least 3 seconds.
•
The password specified in the DFP manager must match the password specified on the password command in the DFP agent.
•
As part of the implementation of the DFP agent subsystem, the manager command has been removed. Its function is now provided by the ip dfp agent global configuration command, and by the following DFP agent configuration commands:
Related Features and Technologies
•
IOS Server Load Balancing (IOS SLB)
•
Dynamic Feedback Protocol (DFP)
Related Documents
•
Cisco IOS IP Configuration Guide, Release 12.2
•
Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2
•
Dynamic Feedback Protocol Support in Distributed Director
•
IOS Server Load Balancing feature module
Supported Platforms
•
Catalyst 6000 Family Switches
•
Cisco 7100 Series Routers
•
Cisco 7200 Series Routers
Supported Standards, MIBs, and RFCs
Standards
•
No new or modified standards
MIBs
•
No new or modified MIBs
RFCs
•
No new or modified RFCs
Prerequisites
The DFP agent subsystem has no prerequisites.
Configuration Tasks
To define the port number to be used by the DFP manager to connect to the IOS SLB DFP agent to receive DFP reports, enter the following commands in order, beginning in global configuration mode:
Command DescriptionStep 1
Router(config)# ip dfp agent subsystem-nameIdentifies a DFP agent subsystem and initiates DFP agent configuration mode. See the ip dfp agent command for more details.
Step 2
Router(config-dfp)# interval seconds(Optional) Configures a DFP agent weight recalculation interval. See the interval (DFP agent) command for more details.
Step 3
Router(config-dfp)# password [0|7] password [timeout](Optional) Configures a DFP agent password for MD5 authentication. See the password command for more details.
Step 4
Router(config-dfp)# port port-numberDefines the port number to be used by the DFP manager to connect to the DFP agent. See the port (DFP agent) command for more details.
Step 5
Router(config-dfp)# inserviceEnables the DFP agent for communication with a DFP manager. A DFP agent is inactive until both of the following conditions are met:
•
The DFP agent has been enabled using the inservice (DFP agent) command.
•
The client subsystem has changed the DFP agent's state to ACTIVE.
See the inservice (DFP agent) command for more details.
Monitoring and Maintaining the DFP Agent Subsystem Feature
To obtain and display runtime information about the DFP agent subsystem, use the following commands in EXEC mode:
Command Purpose Router# show ip dfp [agent subsystem_name] [detail]Displays information about DFP agents. See the show ip dfp command for more details.
Router# show ip slb dfp [agent agent_ip_address port-number | manager manager_ip_address | detail | weights]Displays information about DFP and DFP agents, and about the weights assigned to real servers. See the show ip slb dfp command in the Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2 for more details.
Configuration Examples
The following example shows the commands used to configure the DFP agent subsystem. Use these commands to accomplish the following tasks:
•
Identify DFP agent subsystem slb and change the CLI to DFP agent configuration mode.
•
Set the DFP agent weight recalculation interval to 11 seconds.
•
Set the unencrypted DFP agent password to Cookies (to match the DFP manager's password) and the timeout to 180 seconds.
•
Set the DFP communication port number for to 2221.
•
Enable the DFP agent for communication with the DFP manager.
Router(config)# ip dfp agent slbRouter(config-dfp)# interval 11Router(config-dfp)# password Cookies 180Router(config-dfp)# port 2221Router(config-dfp)# inserviceCommand Reference
This section documents new or modified commands. All other commands used with this feature are documented in the Cisco IOS Release 12.2 command reference publications.
debug ip dfp agent
To display debug messages for the DFP agent subsystem, use the debug ip dfp EXEC command. To stop debug output, use the no form of this command.
debug ip dfp agent
no debug ip dfp agent
Syntax Description
This command has no arguments or keywords.
Defaults
No default behavior or values.
Command Modes
EXEC configuration
Command History
Usage Guidelines
See the following caution before using debug commands:
CautionBecause debugging output is assigned high priority in the CPU process, it can render the system unusable. For this reason, use debug commands only to troubleshoot specific problems or during troubleshooting sessions with Cisco technical support staff. Moreover, it is best to use debug commands during periods of lower network flows and fewer users. Debugging during these periods reduces the effect these commands have on other users on the system.
This command displays debug messages for the DFP agent subsystem.
Examples
The following example configures a DFP agent debug session:
Router# debug ip dfp agentDFP debugging is onRouter#The following example stops all debugging:
Router# no debug allAll possible debugging has been turned offRouter#inservice (DFP agent)
To enable the DFP agent for communication with a DFP manager, use the inservice DFP agent configuration command. To remove the DFP agent from service, use the no form of this command.
inservice
no inservice
Syntax Description
This command has no arguments or keywords.
Defaults
If the inservice command is not specified, the DFP agent is inactive.
Command Modes
DFP agent configuration
Command History
Usage Guidelines
A DFP agent is inactive until both of the following conditions are met:
•
The DFP agent has been enabled using the inservice (DFP agent) command.
•
The client subsystem has changed the DFP agent's state to ACTIVE.
When you use the no form of this command to remove a DFP agent from service, the DFP agent closes all open connections, and no new connections are assigned.
Examples
In the following example, the DFP agent is enabled for communication with a DFP manager:
Router(config)# ip dfp agent slbRouter(config-dfp)# inserviceRelated Commands
interval (DFP agent)
To configure a DFP agent weight recalculation interval, use the interval DFP agent configuration command. To restore the default setting, use the no form of this command.
interval seconds
no interval seconds
Syntax Description
seconds
Specifies the number of seconds to wait before recalculating weights for the DFP manager. Valid values range from 5 to 65535 seconds. The default interval is 10 seconds.
Defaults
The default interval value is 10 seconds.
Command Modes
DFP agent configuration
Command History
Usage Guidelines
The DFP agent sends the new weight to the DFP manager only if the new weight is different from the old weight. If the new weight is the same as the old weight, it is not sent to the DFP manager.
Examples
The following example configures the DFP agent to recalculate weights every 11 seconds:
Router(config)# ip dfp agent slbRouter(config-dfp)# interval 11Related Commands
ip dfp agent
To identify a DFP agent subsystem and initiate DFP agent configuration mode, use the ip dfp agent global configuration command. To remove the DFP agent identification, use the no form of this command.
ip dfp agent subsystem-name
no ip dfp agent subsystem-name
Syntax Description
Defaults
No default behavior or values.
Command Modes
Global configuration
Command History
Usage Guidelines
To discover the subsystem names that are available in your environment, enter the following command:
ip dfp agent ?
Examples
The following example identifies a DFP agent subsystem named slb:
Router(config)# ip dfp agent slbRouter(config-dfp)#?Related Commands
Command Descriptionagent
Identifies a DFP agent to which IOS SLB can connect.
ip slb dfp
Configures DFP, supplies an optional password, and initiates DFP configuration mode.
manager
This command has been removed. Its function is now performed by the ip dfp agent global configuration command, and by the following DFP agent configuration commands:
password
To configure a DFP agent password for MD5 authentication, use the password DFP agent configuration command. To remove the DFP agent password, use the no form of this command.
password [0|7] password [timeout]
no password
Syntax Description
Defaults
The password encryption default is 0 (unencrypted).
The password timeout default is 180 seconds.
Command Modes
DFP agent configuration
Command History
Usage Guidelines
The password specified on this command must match the password specified on the DFP manager.
The timeout option allows you to change the password without stopping messages between the DFP agent and its manager. The default value is 180 seconds.
During the timeout, the agent sends packets with the old password (or null, if there is no old password), and receives packets with either the old or new password. After the timeout expires, the agent sends and receives packets only with the new password; received packets that use the old password are discarded.
If you are changing the password for an entire load-balanced environment, set a longer timeout. This allows enough time for you to update the password on all agents and servers before the timeout expires. It also prevents mismatches between agents and servers that have begun running the new password and agents, and servers on which you have not yet changed the old password.
Examples
The following example sets the DFP agent password (unencrypted by default) to Cookies and the timeout to 360 seconds:
Router(config)# ip dfp agent slbRouter(config-dfp)# password Cookies 360Related Commands
port (DFP agent)
To define the port number to be used by the DFP manager to connect to the DFP agent, use the port (DFP agent) DFP agent configuration command. To disable the port number definition and remove existing connections, use the no form of this command.
port port-number
no port port-number
Syntax Description
port-number
Port number used by the DFP manager to connect to the DFP agent. The valid range is 1 to 65535.
Defaults
No default behavior or values.
Command Modes
DFP agent configuration
Command History
Examples
In the following example, the DFP manager is enabled to connect to the DFP agent using port number 2221:
Router(config)# ip dfp agent slbRouter(config-dfp)# port 2221Related Commands
show ip dfp
To display information about DFP agents, use the show ip dfp privileged EXEC command.
show ip dfp [agent subsystem-name] [detail]
Syntax Description
agent subsystem-name
(Optional) Displays information about the specified DFP agent, such as slb for IOS SLB.
detail
(Optional) Displays detailed DFP agent information.
Defaults
If no options are specified, the command displays output for all DFP agents identified by ip dfp agent commands, regardless of whether those agents are currently in service (Inservice: yes) or active (AppActive: yes).
Command Modes
Privileged EXEC
Command History
Usage Guidelines
Detailed output for show ip dfp includes information about all DFP agents identified by ip slb agent commands, regardless of whether those agents are currently in service (Inservice: yes) or active (AppActive: yes).
Examples
The following example shows detailed information for DFP agent slb:
Router# show ip dfp agent slb detailUnexpected errors: 0DFP Agent for service: SLBPort: 666 Interval: 10Current passwd: <none> Pending passwd: <none>Passwd timeout: 0Inservice: yes AppActive: yesManager IP Address Timeout------------------ -------172.18.45.27 0Weight Table Report for Agent SLBWeights for Port: 80 Protocol: TCPIP Address Bind ID Weight--------------- ------- -------1.1.1.1 0 65535Weights for Port: 0 (wildcard) Protocol: 0 (wildcard)IP Address Bind ID Weight--------------- ------- -------0.0.0.0 65534 0Bind ID Table Report for Agent SLBBind IDs for Port: 80 Protocol: TCPBind ID Client IP Client Mask------- --------------- ---------------0 0.0.0.0 0.0.0.0
Related Commands
Glossary
client subsystem—Users, such as IOS SLB, of the DFP agent function.
DFP—Dynamic Feedback Protocol. Allows host agents to dynamically report the change in status of the host systems providing a virtual service. The status reported is a relative weight that specifies a host server's capacity to perform work.
DFP agent—Object in a load-balanced environment that dynamically reports changes in status of the host systems that provide a virtual service. The status reported is a relative weight that specifies a host server's capacity to perform work. See also DFP manager.
DFP manager—Object in a load-balanced environment that collects status reports from DFP agents. See also DFP agent.
Dynamic Feedback Protocol—See DFP.
IOS SLB—IOS Server Load Balancing. Load-balancing function in which the network administrator defines a virtual server that represents a group of real servers in a cluster of network servers known as a server farm. When a client initiates a connection to the virtual server, IOS SLB chooses a real server for the connection based on a configured load-balancing algorithm.
Server Load Balancing—See IOS SLB.
services manager—Functionality built into IOS SLB that makes load-balancing decisions based on application availability, server capacity, and load distribution algorithms such as weighted round robin or weighted least connections, or the DFP. The services manager determines a real server for the packet flow using load balancing and server/application feedback.
SLB—See IOS SLB.

