Subject: [manet] Non-routable IPs and Hello messages

From: Henning Rogge <[email-masked]>
Date: Tue, 20 Jul 2010 08:34:50 +0200

Hi,

while talking with Ulrich Herberg about some details of NHDP, I maybe noticed 
a missing part of the current OLSRv2 draft.

The current draft specifies an address block TLV for TCs called NBR_ADDR_TYPE 
(see page 66 of draft 11). This TLV allows to tag addresses as (non)routable, 
which is important for routers that have a non-routable originator address.

Unfortunately at the moment there is no way for a router to tell it's 
neighbors (in the hello messages) which address is routable or non-routable. I 
see two problems with this:

1.) a router cannot decide if the originator address of a neighbor is routable 
or not. This means the content of the TC of the router is not well defined.

2.) it's difficult to tell a neighbor that one/some/all interface addresses 
are non-routable. This can be solved for IPv6 with linklocal IPs, but that's 
not a good sollution for IPv4.

I propose that the NBR_ADDR_TYPE tlv should be added to Hello messages in the 
OLSRv2 context too, so it's possible for a router to tag addresses in Hello 
messages as routable/non-routable.

My second (but minor) concern about the NBR_ADDR_TYPE is that the 'default' 
value for this TLV seems to be "non-routable, non-originator". This seems to 
be a strange choice, because most OLSRv2 implementations will have no non-
routable/originator addresses in their TCs at all. Mabye it would be a better 
choice to change the default value to 'non-originator, but routable' and have 
three TLV values for "originator, non-routable", "routable originator" and 
"non-routable non originator".

This would allow us to drop this TLV in most TCs/Hellos completely.

Henning Rogge
-- 
Diplom-Informatiker Henning Rogge , Fraunhofer-Institut für
Kommunikation, Informationsverarbeitung und Ergonomie FKIE
Kommunikationssysteme (KOM)
Neuenahrer Straße 20, 53343 Wachtberg, Germany
Telefon +49 228 9435-961,   Fax +49 228 9435 685
mailto:[email-masked] http://www.fkie.fraunhofer.de
GPG: E1C6 0914 490B 3909 D944 F80D 4487 C67C 55EC CFE0

---

From: "Dearlove, Christopher (UK)" <[email-masked]>
Date: Tue, 20 Jul 2010 09:53:27 +0100

It's not an omission, it's a decision (that of course can be debated,
my comments are below). From the Terminology section of OLSRv2:

      A router MUST be able to distinguish a
      routable address from a non-routable address by direct inspection
      of the network address, based on global scope address allocations
      by IANA and/or administrative configuration.  

Now that may lead you to ask why flag the addresses in the TC message?
First, they need to be flagged with something, as otherwise there are
protocol extensibility issues. And they need to be flagged with whether
they are originator addresses. They could be flagged just originator/not
originator, but it's convenient to flag them as is.

Requiring that the routability is always flagged in HELLO messages makes
them bigger, for what in most cases is just not necessary. We have this
continual tension between extensibility, simplicity and efficiency. This
is a pro-efficiency (and arguably pro-simplicity) case.

-- 
Christopher Dearlove
Technology Leader, Communications Group
Networks, Security and Information Systems Department
BAE Systems Advanced Technology Centre
West Hanningfield Road, Great Baddow, Chelmsford, CM2 8HN, UK
Tel: +44 1245 242194  Fax: +44 1245 242124

BAE Systems (Operations) Limited
Registered Office: Warwick House, PO Box 87,
Farnborough Aerospace Centre, Farnborough, Hants, GU14 6YU, UK
Registered in England & Wales No: 1996687

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf Of Henning Rogge
Sent: 20 July 2010 07:35
To: [email-masked]
Subject: [manet] Non-routable IPs and Hello messages

Hi,

Henning Rogge

********************************************************************
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
********************************************************************

---

From: Henning Rogge <[email-masked]>
Date: Tue, 20 Jul 2010 12:36:20 +0200

> originator, but it's convenient to flag them as is.
I we have a flag for "non routable", we don't need a flag for "routable". 
Making the exception the case without TLV is a bad design choise in my 
opinion, because we add overhead without loosing complexity.

> is a pro-efficiency (and arguably pro-simplicity) case.
That's why I made the second suggestion that we use "routable" as the default 
value which needs no TLV (both in Hellos and TCs). This way we only would 
require additional TLVs for special cases.

Henning Rogge

---

From: "Dearlove, Christopher (UK)" <[email-masked]>
Date: Tue, 20 Jul 2010 12:04:52 +0100

We want a TLV in the TC message. It's a design principle that
all addresses used should have a TLV. Otherwise you cannot add
new addresses with a new meaning (and I thought I'd had a
discussion with you which had a possible addition to a TC as
a possible extenmsion to OLSRv2). For HELLO messages we have
such TLVs - all addresses in a HELLO message have at least one
of LOCAL_IF, LINK_STATUS or OTHER_NEIGHB added. For TC that's
NBR_ADD_STATUS. That means there is no default, routable or
non-routable.

-----Original Message-----
From: Henning Rogge [mailto:[email-masked]] 
Sent: 20 July 2010 11:36
To: Dearlove, Christopher (UK)
Cc: [email-masked]
Subject: Re: [manet] Non-routable IPs and Hello messages

Henning Rogge

---

From: Henning Rogge <[email-masked]>
Date: Tue, 20 Jul 2010 13:22:03 +0200

> NBR_ADD_STATUS. That means there is no default, routable or
Okay, I can see this as a design decission...

maybe I'm overlooking something with my first problem.

Let's assume I have route A which has a non-routable originator-IP. It sets a 
corresponding address in it's TC, so other nodes will not create a route to 
the originator IP.

But if the node is not chosen by anyone as a MPR, it will not create any TCs. 
But the neighbor of the node cannot know from the Hello that the originator is 
a non-routable address (because it cannot be marked in the Hello), so it will 
include the address into it's TCs as "originator, routable".

I see an inconsistency here (similar to the problem with the IPv4-Interface 
addresses a node does not want to be routable).

If we demand that any node with a non-routable originator address send TCs, we 
throw away most of the MPR optimization for networks with non-routable 
originators.

Henning Rogge

---

From: "Dearlove, Christopher (UK)" <[email-masked]>
Date: Tue, 20 Jul 2010 13:23:22 +0100

> But if the node is not chosen by anyone as a MPR, it will not create
any TCs.

Correct.
 
> a non-routable address (because it cannot be marked in the Hello)

But see the paragraph from OLSRv2 that I quoted that contradicts that.

> so it will 

Only if it is routable.

> addresses a node does not want to be routable).

I'm not following that.

> If we demand that any node with a non-routable originator address send
TCs,

Even if there were the issue you note above, that's got nothing to do
with
sending TCs, it's about what addresses are includedin the TCs that are
sent.
Nothing here makes any extar nodes send TCs.

> we 

> originators.
 
That would be a problem if we did it, but we don't.

---

From: Henning Rogge <[email-masked]>
Date: Tue, 20 Jul 2010 14:29:18 +0200

>      by IANA and/or administrative configuration.  

As I said before, this does not work well with IPv4. Administrative 
configuration is even worse, because I would have to configure what kind of 
IPs my neighbors use for routable/non-routable. This makes configuration a 
network a really headache.

Henning Rogge

---

From: David Young <[email-masked]>
Date: Tue, 20 Jul 2010 22:30:15 -0500

> not a good sollution for IPv4.

Not even link-local IPv4 addresses, 169.254.0.0/16, are ok?

Dave

-- 
David Young             OJC Technologies
[email-masked]      Urbana, IL * (217) 278-3933

---

From: Henning Rogge <[email-masked]>
Date: Wed, 21 Jul 2010 11:37:30 +0200

On Wed July 21 2010 05:30:15 David Young wrote:
> > 2.) it's difficult to tell a neighbor that one/some/all interface
> > addresses are non-routable. This can be solved for IPv6 with linklocal
> > IPs, but that's not a good sollution for IPv4.
> 
I'm not sure it's really feasable for IPv4 without automatic generation of 
this addresses. With only 2^16 addresses the chance for a collision becomes 
realistic fast.

Henning Rogge