Subject: [Int-area] Using ISO8473 as a network layer to carry flexible addresses

From: Stewart Bryant <[email-masked]>
Date: Wed, 3 Feb 2021 12:49:40 +0000

Re drafts:
 
https://datatracker.ietf.org/doc/draft-jia-scenarios-flexible-address-structure/ <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-jia-scenarios-flexible-address-structure%2F&data=04%7C01%7Ckiranm%40futurewei.com%7C95b5d102feaf4674ab8408d8c7972448%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637478799262464227%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=yDi0mFnbU60nFC5PJC%2BAAWVIdSMT%2FY8UO0XIiK3J4iI%3D&reserved=0>
https://datatracker.ietf.org/doc/draft-jia-flex-ip-address-structure/ <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-jia-flex-ip-address-structure%2F&data=04%7C01%7Ckiranm%40futurewei.com%7C95b5d102feaf4674ab8408d8c7972448%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637478799262464227%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=XB9VFEQiaa0ZMjG5BuF%2FPeQnvFcmGgfY0%2Bye4s7CSoA%3D&reserved=0>
Since the authors are interested in network layer protocols that support multiple address types and multiple address lengths, I wonder if they have considered using ISO8473 as the bearer and developing that to their needs?
ISO 8473 is also known as ITU X233 (it costs money to download from ISO, but seems to be free from the ITU-T site). It is an in force and actually well deployed network layer protocol with many similar characteristics to IPv6. The reason that it is deployed is that it is used to support SS7. It also has a very widely deployed link-state IGP since IS-IS was developed to support ISO8474 and later adapted to support IP late run its life. 
It was one of the contenders for IPv4 replacement, and so there RFCs that authors may study: RFC994 is a copy of the late version of the spec in RFC format. Then there is RFC1195 where Ross Callon shows how it works in an IETF environment carrying IETF transport protocols and this eventually became RFC1347 (TUBA), which whilst whilst marked Historic in the IETF RFC collection is almost certainly still implementable since the base network layer protocol is still an active standard.
It would need some work to determine the applicability of the protocol to your application and the feasibility of adding the necessary new address types (due to crowding of the existing address registry) and any other extensions that you might need.
Note BTW that it supports source routing functionality and so ought to be usable in an SR environment should that be needed.
There would also need to be work to see how feasible it would be to implement in a modern NPU, though having implemented it in a hardware assisted microcode platform that is quite similar to a modern NPU back in the 90s and having got quite creditable performance I think it is feasible to run this on modern hardware including repurposing the existing longest match engine to look up a number of your new address formats. 
There are a bunch of specs here for your convenience although I have not studied the list in detail
http://www.networksorcery.com/enp/protocol/clnp.htm
Best regards
Stewart

---

From: Jiayihao <[email-masked]>
Date: Mon, 8 Feb 2021 09:39:09 +0000

Hi Stewart,

I followed the ISO 8473 specification and find that a “flexible address structure” is similar to it.

ISO 8473 has a variable address length with a <len> field, while for the flexibility described in the “flexible address structure” draft, the flexibility refer to both a) variable length; 2) new semantics. ISO 8473 do cover the variable length, but semantics is not mentioned in it. So a new semantics carried address could be a main difference compared to ISO 8473.

Thanks,
Yihao

发件人: Stewart Bryant [mailto:[email-masked]]
发送时间: 2021年2月3日 20:50
收件人: [email-masked]; [email-masked]; [email-masked]; int-area <[email-masked]>
抄送: Stewart Bryant <[email-masked]>
主题: Using ISO8473 as a network layer to carry flexible addresses

Re drafts:

https://datatracker.ietf.org/doc/draft-jia-scenarios-flexible-address-structure/<https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-jia-scenarios-flexible-address-structure%2F&data=04%7C01%7Ckiranm%40futurewei.com%7C95b5d102feaf4674ab8408d8c7972448%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637478799262464227%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=yDi0mFnbU60nFC5PJC%2BAAWVIdSMT%2FY8UO0XIiK3J4iI%3D&reserved=0>

https://datatracker.ietf.org/doc/draft-jia-flex-ip-address-structure/<https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-jia-flex-ip-address-structure%2F&data=04%7C01%7Ckiranm%40futurewei.com%7C95b5d102feaf4674ab8408d8c7972448%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637478799262464227%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=XB9VFEQiaa0ZMjG5BuF%2FPeQnvFcmGgfY0%2Bye4s7CSoA%3D&reserved=0>

Best regards

Stewart

---

From: Stewart Bryant <[email-masked]>
Date: Mon, 8 Feb 2021 10:38:54 +0000

> On 8 Feb 2021, at 09:39, Jiayihao <[email-masked]> wrote:
> 
> Hi Stewart,
>  

The way that an ISO 8473 address works is that at the protocol level it has the length - so it definitely supports variable length. Within the address itself which I think is covered by a different standard, the address starts with an address family indicator (AFI) which is one octet, though you could of course expand that by creating subfamilies in the following octet. The way you get the additional semantics and multiple address types is through the AFI mechanism. 

Thus ISO 8473, which as I point out is an international standard and thus avoids a lot of SDO politics is a protocol capable of supporting variable length and variable types and thus variable semantics.

You mention TRIE, when we built the high performance Decnet routers many years ago we had an ASIC TRIE engine and it used to process, Decnet PhV, Decnet PhIV (native and embedded in PhV), IPv4 and IEEE MAC addresses from the same table. It would have done IPv6 address if they has been invented when we built the product.

So there is an international standard and a forwarding framework that works for most of what you want to do. Whether you want to take a different approach or not is up to you, but you do have a way of finessing many of the standards issues that you face with a new network layer protocol.

- Stewart

> Thanks,
> Yihao
>  
> 发件人: Stewart Bryant [mailto:[email-masked] <mailto:[email-masked]>] 
> 发送时间: 2021年2月3日 20:50
> 收件人: [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>; int-area <[email-masked] <mailto:[email-masked]>>
> 抄送: Stewart Bryant <[email-masked] <mailto:[email-masked]>>
> http://www.networksorcery.com/enp/protocol/clnp.htm <http://www.networksorcery.com/enp/protocol/clnp.htm>
> Best regards
> Stewart