Ip::Qos::Config Class Reference

#include <QosConfig.h>

Collaboration diagram for Ip::Qos::Config:

Public Member Functions

 Config ()
 
 ~Config ()
 
void parseConfigLine ()
 
void dumpConfigLine (char *entry, const char *name) const
 
bool isHitTosActive () const
 Whether we should modify TOS flags based on cache hits and misses. More...
 
bool isHitNfmarkActive () const
 Whether we should modify netfilter marks based on cache hits and misses. More...
 
bool isAclNfmarkActive () const
 
bool isAclTosActive () const
 

Public Attributes

tos_t tosLocalHit
 TOS value to apply to local cache hits. More...
 
tos_t tosSiblingHit
 TOS value to apply to hits from siblings. More...
 
tos_t tosParentHit
 TOS value to apply to hits from parent. More...
 
tos_t tosMiss
 TOS value to apply to cache misses. More...
 
tos_t tosMissMask
 Mask for TOS value to apply to cache misses. Applied to the tosMiss value. More...
 
bool preserveMissTos
 Whether to preserve the TOS value of the inbound packet for misses. More...
 
tos_t preserveMissTosMask
 The mask to apply when preserving the TOS of misses. Applies to preserved value from upstream. More...
 
nfmark_t markLocalHit
 Netfilter mark value to apply to local cache hits. More...
 
nfmark_t markSiblingHit
 Netfilter mark value to apply to hits from siblings. More...
 
nfmark_t markParentHit
 Netfilter mark value to apply to hits from parent. More...
 
nfmark_t markMiss
 Netfilter mark value to apply to cache misses. More...
 
nfmark_t markMissMask
 Mask for netfilter mark value to apply to cache misses. Applied to the markMiss value. More...
 
bool preserveMissMark
 Whether to preserve netfilter mark value of inbound connection. More...
 
nfmark_t preserveMissMarkMask
 The mask to apply when preserving the netfilter mark of misses. Applied to preserved value from upstream. More...
 
acl_tostosToServer
 The TOS that packets to the web server should be marked with, based on ACL. More...
 
acl_tostosToClient
 The TOS that packets to the client should be marked with, based on ACL. More...
 
acl_nfmarknfmarkToServer
 The MARK that packets to the web server should be marked with, based on ACL. More...
 
acl_nfmarknfmarkToClient
 The MARK that packets to the client should be marked with, based on ACL. More...
 

Detailed Description

QOS configuration class. Contains all the parameters for QOS functions as well as functions to check whether either TOS or MARK QOS is enabled.

Definition at line 167 of file QosConfig.h.

Constructor & Destructor Documentation

tos_t const hier_code const char *STUB Ip::Qos::Config::Config ( )

Definition at line 209 of file QosConfig.cc.

Ip::Qos::Config::~Config ( )
inline

Definition at line 172 of file QosConfig.h.

Member Function Documentation

void Ip::Qos::Config::dumpConfigLine ( char *  entry,
const char *  name 
) const

Dump all the configuration values

NOTE: Due to the low-level nature of the library these objects are part of the dump function must be self-contained. which means no StoreEntry references. Just a basic char* buffer.

NOTE: Due to the low-level nature of the library these objects are part of the dump function must be self-contained. which means no StoreEntry refrences. Just a basic char* buffer.

Definition at line 392 of file QosConfig.cc.

References p.

bool Ip::Qos::Config::isAclNfmarkActive ( ) const

Iterates through any outgoing_nfmark or clientside_nfmark configuration parameters to find out if any Netfilter marking is required. This function is used on initialisation to define capabilities required (Netfilter marking requires CAP_NET_ADMIN).

Definition at line 530 of file QosConfig.cc.

References i, acl_nfmark::next, and acl_nfmark::nfmark.

bool Ip::Qos::Config::isAclTosActive ( ) const

Iterates through any outgoing_tos or clientside_tos configuration parameters to find out if packets should be marked with TOS flags.

Definition at line 547 of file QosConfig.cc.

References i, acl_tos::next, and acl_tos::tos.

bool Ip::Qos::Config::isHitNfmarkActive ( ) const
inline

Definition at line 191 of file QosConfig.h.

References markLocalHit, markMiss, markParentHit, markSiblingHit, and preserveMissMark.

bool Ip::Qos::Config::isHitTosActive ( ) const
inline

Definition at line 186 of file QosConfig.h.

References preserveMissTos, tosLocalHit, tosMiss, tosParentHit, and tosSiblingHit.

void Ip::Qos::Config::parseConfigLine ( )

Member Data Documentation

nfmark_t Ip::Qos::Config::markLocalHit

Definition at line 217 of file QosConfig.h.

Referenced by isHitNfmarkActive().

nfmark_t Ip::Qos::Config::markMiss

Definition at line 220 of file QosConfig.h.

Referenced by Ip::Qos::doNfmarkLocalMiss(), and isHitNfmarkActive().

nfmark_t Ip::Qos::Config::markMissMask

Definition at line 221 of file QosConfig.h.

Referenced by Ip::Qos::doNfmarkLocalMiss().

nfmark_t Ip::Qos::Config::markParentHit

Definition at line 219 of file QosConfig.h.

Referenced by Ip::Qos::doNfmarkLocalMiss(), and isHitNfmarkActive().

nfmark_t Ip::Qos::Config::markSiblingHit

Definition at line 218 of file QosConfig.h.

Referenced by Ip::Qos::doNfmarkLocalMiss(), and isHitNfmarkActive().

acl_nfmark* Ip::Qos::Config::nfmarkToClient

Definition at line 228 of file QosConfig.h.

acl_nfmark* Ip::Qos::Config::nfmarkToServer

Definition at line 227 of file QosConfig.h.

bool Ip::Qos::Config::preserveMissMark

Definition at line 222 of file QosConfig.h.

Referenced by isHitNfmarkActive().

nfmark_t Ip::Qos::Config::preserveMissMarkMask

Definition at line 223 of file QosConfig.h.

Referenced by Ip::Qos::doNfmarkLocalMiss().

bool Ip::Qos::Config::preserveMissTos

Definition at line 214 of file QosConfig.h.

Referenced by isHitTosActive().

tos_t Ip::Qos::Config::preserveMissTosMask

Definition at line 215 of file QosConfig.h.

Referenced by Ip::Qos::doTosLocalMiss().

tos_t Ip::Qos::Config::tosLocalHit

Definition at line 209 of file QosConfig.h.

Referenced by isHitTosActive().

tos_t Ip::Qos::Config::tosMiss

Definition at line 212 of file QosConfig.h.

Referenced by Ip::Qos::doTosLocalMiss(), and isHitTosActive().

tos_t Ip::Qos::Config::tosMissMask

Definition at line 213 of file QosConfig.h.

Referenced by Ip::Qos::doTosLocalMiss().

tos_t Ip::Qos::Config::tosParentHit

Definition at line 211 of file QosConfig.h.

Referenced by Ip::Qos::doTosLocalMiss(), and isHitTosActive().

tos_t Ip::Qos::Config::tosSiblingHit

Definition at line 210 of file QosConfig.h.

Referenced by Ip::Qos::doTosLocalMiss(), and isHitTosActive().

acl_tos* Ip::Qos::Config::tosToClient

Definition at line 226 of file QosConfig.h.

acl_tos* Ip::Qos::Config::tosToServer

Definition at line 225 of file QosConfig.h.


The documentation for this class was generated from the following files:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors