THashKeyIp6 Class Reference

class THashKeyIp6 : public MHashKey
A hash key based on IPv6 addresses. There are three operation modes:
  • each IP address forms its own equivalence class.

  • IP addresses in the same network belong to the same equivalence class Since we often do not have the information about the network masks at the destination, we have to do some kind of assumptions. Therefore, IPv6 addresses are considered to have /64 prefix and IPv4 addresses have /24 prefix. (Note that occasionally having slightly wrong network prefixes here is not too bad a failure, if the general direction is correct).

  • Addresses delivered via a particular network interface belong to the same equivalence class. Here we have unsolved implementation issues and other considerations, so presently this remains a TODO item. Motivation of this is the assumption that in the GPRS world the last-hop wireless link is the bottleneck that determines the TCP connection characteristics.

Inherits from

Constructor & Destructor Documentation

THashKeyIp6()

THashKeyIp6 ( ) [inline]

THashKeyIp6(TKeyMode, const TInetAddr &)

THashKeyIp6 ( TKeyMode aMode,
const TInetAddr & aAddr
)

Parameters

TKeyMode aMode
const TInetAddr & aAddr

Member Functions Documentation

Ip6Address()

const TIp6Addr & Ip6Address ( ) const [inline]

IsEqual(const MHashKey &)

TBool IsEqual ( const MHashKey & aKey ) [virtual]

Return ETrue if this key is considered equal to the another key. Equality can be a non-trivial concept, as can be seen in the implementation of THashKeyIp6 that implements this virtual class.

Parameters

const MHashKey & aKey

ScopeId()

TUint32 ScopeId ( ) const [inline]

ToInt()

TUint ToInt ( ) [virtual]

Generate a unsigned integer value from the key. It can be used, e.g. as an index to the hash table. The integer generation must be deterministic.

Member Enumerations Documentation

Enum TKeyMode

Enumerators

EPerHost
EPerNet

Hosts with the same network prefix have a common entry

EPerIface

All destinations with same network interface share an

Member Data Documentation

TIp6Addr iAddress

TIp6Addr iAddress [private]

TKeyMode iKeyMode

TKeyMode iKeyMode [private]

TUint32 iScopeId

TUint32 iScopeId [private]