sun.com docs.sun.com My Sun Worldwide Sites

Previous Previous     Contents     Index     Next Next
Chapter 34

Creating the IPQoS Configuration File (Tasks)

This chapter shows how to create IPQoS configuration files. Topics that are covered in the chapter include the following.

This chapter assumes that you have defined a complete QoS policy, and you are ready to use this policy as the basis for the IPQoS configuration file. For instructions on QoS policy planning, refer to Planning the Quality-of-Service Policy.

Defining a QoS Policy in the IPQoS Configuration File (Task Map)

This task map lists the general tasks for creating an IPQoS configuration file.

Task

Description

For Instructions

1. Plan your IPQoS-enabled network configuration.

Decide which systems on the local network should become IPQoS enabled.

How to Prepare a Network for IPQoS 

2. Plan the QoS policy for IPQoS systems on your network.

Identify traffic flows as distinct classes of service. Then, determine which flows require traffic management.

Planning the Quality-of-Service Policy 

3. Create the IPQoS configuration file and define its first action.

Create the IPQoS file, invoke the IP classifier, and define a class for processing.

How to Create the IPQoS Configuration File and Define Traffic Classes 

4. Create filters for a class.

Add the filters that govern which traffic is selected and organized into a class.

How to Define Filters in the IPQoS Configuration File 

5. Add more classes and filters to the IPQoS configuration file.

Create more classes and filters to be processed by the IP classifier.

How to Create an IPQoS Configuration File for a Best-Effort Web Server 

6. Add an action statement with parameters that configure the metering modules.

If the QoS policy calls for flow control, assign flow-control rates and conformance levels to the meter.

How to Configure Flow Control in the IPQoS Configuration File 

7. Add an action statement with parameters that configure the marker.

If the QoS policy calls for differentiated forwarding behaviors, define how traffic classes are to be forwarded.

How to Define Traffic Forwarding in the IPQoS Configuration File 

8. Add an action statement with parameters that configure the flow-accounting module.

If the QoS policy calls for statistics gathering on traffic flows, define how accounting statistics are to be gathered.

How to Enable Accounting for a Class in the IPQoS Configuration File 

9. Apply the IPQoS configuration file.

Add the content of a specified IPQoS configuration file into the appropriate kernel modules.

How to Apply a New Configuration to the IPQoS Kernel Modules 

10. Configure forwarding behaviors in the router files.

If any IPQoS configuration files on the network define forwarding behaviors, add the resulting DSCPs to the appropriate scheduling files on the router.

How to Configure a Router on an IPQoS-Enabled Network 

Tools for Creating a QoS Policy

The QoS policy for your network resides in the IPQoS configuration file. You create this configuration file with a text editor. Then, you provide the file as an argument to ipqosconf, the IPQoS configuration utility. When you instruct ipqosconf to apply the policy that is defined in your configuration file, the policy is written into the kernel IPQoS system. For detailed information about the ipqosconf command, refer to the ipqosconf(1M) man page. For instructions on the use of ipqosconf, refer to How to Apply a New Configuration to the IPQoS Kernel Modules.

Basic IPQoS Configuration File

An IPQoS configuration file consists of a tree of action statements that implement the QoS policy that you defined in Planning the Quality-of-Service Policy. The IPQoS configuration file configures the IPQoS modules. Each action statement contains a set of classes, filters, or parameters to be processed by the module that is called in the action statement.

For the complete syntax of the IPQoS configuration file, refer to Example 37-3 and the ipqosconf(1M) man page.

Configuring the IPQoS Example Topology

The tasks in this chapter explain how to create IPQoS configuration files for three IPQoS-enabled systems. These systems are part of the network topology of the company BigISP, which was introduced in Figure 33-4.

  • Goldweb - A web server that hosts web sites for customers who have purchased premium-level SLAs

  • Userweb - A less-powerful web server that hosts personal web sites for home users who have purchased "best-effort" SLAs

  • BigAPPS - An application server that serves mail, network news, and FTP to both gold-level and best-effort customers

These three configuration files illustrate the most common IPQoS configurations. You might use the sample files that are shown in the next section as templates for your own IPQoS implementation.

Creating IPQoS Configuration Files for Web Servers

This section introduces the IPQoS configuration file by showing how to create a configuration for a premium web server. The section then shows how to configure a completely different level of service in another configuration file for a server that hosts personal web sites. Both servers are part of the network example that is shown in Figure 33-4.

The following configuration file defines IPQoS activities for the Goldweb server. This server hosts the web site for Goldco, the company that has purchased a premium SLA.

Example 34-1 Sample IPQoS Configuration File for a Premium Web Server

fmt_version 1.0

action {
    module ipgpc
    name ipgpc.classify
    params {
        global_stats TRUE
    }
    class {
        name goldweb
        next_action markAF11
        enable_stats FALSE
    }
    class {
        name video
        next_action markEF
        enable_stats FALSE
    }
    filter {
        name webout
        sport 80
        direction LOCAL_OUT
        class goldweb
    }
    filter {
        name videoout
        sport videosrv
        direction LOCAL_OUT
        class video
    }
}
action {
    module dscpmk
    name markAF11
    params {
        global_stats FALSE
        dscp_map{0-63:10}
        next_action continue
    }
}
action {
    module dscpmk
    name markEF
    params {
        global_stats TRUE
        dscp_map{0-63:46}
        next_action acct
    }
}
action {
    module flowacct
    name acct
    params {
        enable_stats TRUE
        timer 10000
        timeout 10000
        max_limit 2048
    }
}

Previous Previous     Contents     Index     Next Next
Company Info Contact Terms of Use Privacy Copyright 1994-2007 Sun Microsystems, Inc.