Subject: [homenet] after the meeting comments on draft-ietf-homenet-front-end-naming-delegation-07

From: Denis Ovsienko <[email-masked]>
Date: Tue, 24 Jul 2018 17:31:46 +0100

Hello group.

What I was trying to say at the WG meeting was the following. Looking at the slide with the red arrow between a DNS server in the home network and a DNS server somewhere on the Internet, the following scenario immediately came to my mind.

1. A home network is connected to the Internet through an ISP A. Everything is synchronous and works.
2. The link to ISP A fails.
3. For the next month the home network remains half time disconnected and half time connected through ISP B. Regardless of the Internet reachability, devices come and go, and the network tries to update its zone.
4. The link to ISP A is restored and works for the next three months.
5. The user occasionally connects to ISP B in parallel, as a matter of habit.
6. Go to 2.

Now, given the suggestion that the ISP maintains the zone, it would make sense to think what happens when the ISP's copy is no longer updated and the home network copy has changed. I have briefly looked through the I-D and have not found anything that would explicitly make sure that the zone cannot go split-brain. And if it goes split-brain, will it necessarily synchronize afterwards with no human intervention? Maybe those provisions are there, but I did not see them, in that case please disregard the comment.

Feel free to use this input to improve the document, if it gives you any new ideas.

-- 
    Denis Ovsienko

---

From: Ted Lemon <[email-masked]>
Date: Tue, 24 Jul 2018 12:35:57 -0400

My personal feeling on this is that the off-site backup zone is a service
that could be provided by an ISP, could be provided by someone else, or
could just be something that a sufficiently geeky user sets up for
themself.   If an ISP connection is as flaky as you describe, I would think
that they would be a poor candidate for offering this service, although as
long as it is reachable through ISP B, and is updated accurately, it should
be fine.   If your point is that the homenet should notice if it can't
maintain contact with the off-site backup server, I think that's a good
point.

On Tue, Jul 24, 2018 at 12:31 PM, Denis Ovsienko <[email-masked]>
wrote:

> Hello group.
>
> What I was trying to say at the WG meeting was the following. Looking at
> the slide with the red arrow between a DNS server in the home network and a
> DNS server somewhere on the Internet, the following scenario immediately
> came to my mind.
>
> 3. For the next month the home network remains half time disconnected and
> half time connected through ISP B. Regardless of the Internet reachability,
> devices come and go, and the network tries to update its zone.
> Now, given the suggestion that the ISP maintains the zone, it would make
> sense to think what happens when the ISP's copy is no longer updated and
> the home network copy has changed. I have briefly looked through the I-D
> and have not found anything that would explicitly make sure that the zone
> cannot go split-brain. And if it goes split-brain, will it necessarily
> synchronize afterwards with no human intervention? Maybe those provisions
> are there, but I did not see them, in that case please disregard the
> comment.
>
> _______________________________________________
> homenet mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/homenet
>

---

From: Daniel Migault <[email-masked]>
Date: Tue, 24 Jul 2018 17:14:30 -0400

Hi Denis,

Thanks for the feed back! The big read arrow symbolized the synchronization
between the zone hosted on your HNA and the DNS Public server on the
outsourcing infrastructure. This could be your ISP or any third party. One
of the motivation to outsource was to prevent DDoS attack on the HNA, so as
mention Ted, if your ISP is as reliable as your HNA.... you may use a third
party to host your zone. However, the HNA hosts the Hidden primary and is
expected to host the most up-to date content. When you switch from one ISP
to another, these ISP are hosting secondary servers and your hidden primary
are expected to be able to synchronize with these secondaries. As a result
the zone published on the Internet is expected to remain synchronized. The
problem by switching from one outsourcing infrastructure to the other, is
that information stored in cache resolver (NS) may not be up-to-date for
TTL seconds. As mentioned Ted, we expect that the hosting infrastructure is
able to host relatively safely.

I believe this concern might also be relevant to the dhcp option draft
where we explicitly had the discussion of an ISP providing the service. In
this draft the DNS Zone Template is a template that is expected to be
provisioned by the HNA. In other words, the template is not expected to
contain all elements. The template is mostly useful when the HNA is
booting. As a result, it is likely that there are very little changes over
time and remain the same over the time you switch from one ISP to the
other. If not up-to-date, the HNA may also update the template.

Yours,
Daniel

---

From: Denis Ovsienko <[email-masked]>
Date: Wed, 25 Jul 2018 10:38:28 +0100

---- On Tue, 24 Jul 2018 22:14:30 +0100 Daniel Migault <[email-masked]> wrote ---- 
 > Hi Denis, 
 > 
 > Thanks for the feed back! The big read arrow symbolized the synchronization between the zone  hosted on your HNA and the DNS Public server on the outsourcing  infrastructure. This could be your ISP or any third party. One of the  motivation to outsource was to prevent DDoS attack on the HNA, so as  mention Ted, if your ISP is as reliable as your HNA.... you may use a  third party to host your zone. However, the HNA hosts the Hidden primary  and is expected to host the most up-to date content. When you switch  from one ISP to another, these ISP are hosting secondary servers and  your hidden primary are expected to be able to synchronize with these  secondaries. As a result the zone published on the Internet is expected to remain synchronized. The problem by switching from one outsourcing infrastructure to the other, is that information stored in cache resolver (NS) may not be up-to-date for TTL seconds. As mentioned Ted, we expect that the hosting infrastructure is able to host relatively safely.           

Hello Daniel.

The example I provided is a bit exaggerated on one hand (in that this is not what is typically and continuously going on in, say, 95% of home networks), but is not exaggerated on the other -- I would guess, at least a third of home networks face major outages at some point of their deployed life, and you probably want to design a naming solution that is able to survive it.

There are so many ways for networks to go wrong: software bugs, hardware faults, lightning strikes, diggers and rodents damaging cables, operators connecting wrong cables to wrong ports and deploying wrong configuration onto wrong network devices and so on. When it happens in a managed environment, there is usually a sufficient amount of competent people around to detect and handle the failure -- myself having been one of those IT troubleshooters during one or another couple years. But it is not uncommon that replacing a faulty piece of non-top-priority hardware can take a month or more. Expectedly, a $20/month service does not come with the best SLA in the market. So going offline (or split) for long periods is a part of the problem space.

Then, in a non-managed environment, simply put, you are designing a heating boiler for users that have no idea how heating works. What you, as an engineer, effectively have for the user interface is a couple knobs, a couple buttons and a few LEDs. So your design must not be fragile, must be able to fail safe, and must somehow communicate the reason or error code of the failure if it cannot repair or reset itself. Like, for instance, a PC that lights up different combination of diagnostic LEDs or beeps in a specific way when it cannot make it through the POST. The appliance communicates a complex problem in a simple way, so the user can hand it over. And the user does not want any boiler issues in the first place, because the boiler guy charges for his work.

I am not suggesting how to design this DNS zone setup, but rather how to evaluate its fitness before the actual deployment. The two points above may be helpful for that.

 > I believe this concern might also be relevant to the dhcp option draft where we explicitly had the discussion of an ISP providing the service. In this draft the DNS Zone Template is a template that is expected to be provisioned by the HNA. In other words, the template is not expected to contain all elements. The template is mostly useful when the HNA is booting. As a result, it is likely that there are very little changes over time and remain the same over the time you switch from one ISP to the other. If not up-to-date, the HNA may also update the template. 
 > 

It would be nice if this DNS zone hosting migration would not involve the ISPs. For them this is an obvious technical pain with questionable returns, and they will naturally try to avoid it. As it has already been proven with mobile number portability, the only way to guarantee DNS zone portability would be through a law or government regulation. Most ISPs are just in a different business.

-- 
    Denis Ovsienko