class THashKeyIp6 : public MHashKey |
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.
Public Member Functions | |
---|---|
THashKeyIp6() | |
THashKeyIp6(TKeyMode, const TInetAddr &) | |
const TIp6Addr & | Ip6Address() |
TBool | IsEqual(const MHashKey &) |
TUint32 | ScopeId() |
TUint | ToInt() |
Public Member Enumerations | |
---|---|
enum | TKeyMode { EPerHost, EPerNet, EPerIface } |
Private Attributes | |
---|---|
TIp6Addr | iAddress |
TKeyMode | iKeyMode |
TUint32 | iScopeId |
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.
const MHashKey & aKey |
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.
EPerHost | |
EPerNet |
Hosts with the same network prefix have a common entry |
EPerIface |
All destinations with same network interface share an |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.