Visit Jeremy's Blog.
Go Back > Forums > Linux Forums > Linux - Networking
User Name
Linux - Networking This forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.


  Search this Thread
Old 12-07-2015, 06:18 AM   #1
LQ Newbie
Registered: Dec 2015
Posts: 3

Rep: Reputation: Disabled
Introducing brand-new Internet Protocol "Five Fields"

Hi all,

I have created a new Internet Protocol "Five Fields".

Why ?
Because IPv6 is hard to use, and I wanted to keep look & feel similar to IPv4.
Problem with IPv6, is that those addresses are very hard for humans to remember, compare and visualize topologies in human brain.
IPv4 has great look & feel, but it is exhausted. So I wrote a new replacement for IP.

I did it, because I don't like to work with something long like this:


And it would be better, if we work with simpler addressing:


Draft spec. available.

"Five Fields" offers 0...999 in each field, in dotted decimal
notation, and includes unique features not found *anywhere else*.

- x230,000 times larger address space than IPv4 (should be enough for several hundred years, including IoT)
-Mobile TCP, allows moving Mobile Nodes between subnets, without
losing connectivity. A replacement for Mobile IP. An order of
magnitude simpler, and requires no access to routers and
-IP-VRF header extension, allows doing VRF-VPN without MPLS (and
without dot1q VLANs)
-Super-lightweight, and should be faster than IPv4 or IPv6 by 1-2%.
Small overhead.
-UDP/IP overhead is 28 bytes; UDP/IPv6 overhead is 48 bytes, but
UDP/IP-FF overhead is just 26 bytes ! Even shorter than the original, yay !
-Simpler to implement than IPv4/v6, because no fragmentation. MTU path discovery is the way to go.
-No broadcasts.
-No IP header checksums (done at layer 4)
-No autoconfiguration/SLAAC (this belongs to DHCP territory)
-No IGMP required (it is optional now for Multicasts)
-No Layer2 resolution. ARP-free protocol.

I believe, that it is superior to both IPv4 and IPv6, simpler than
both, and intended as a replacement for both. Substantial improvement on both.

This draft specification describes various parts, the protocol itself, addressing scheme, Address Resolution Algorithm (without ARP), DNS extensions, Mobile TCP, and more...

With more time and polish, I plan to send it to IETF.

Best wishes,
-Alexey Eromenko "Technologov"

Last edited by Technologov; 12-07-2015 at 10:22 AM.
Old 12-07-2015, 09:41 AM   #2
Senior Member
Registered: Dec 2008
Location: root
Distribution: Slackware & BSD
Posts: 1,665

Rep: Reputation: 487Reputation: 487Reputation: 487Reputation: 487Reputation: 487
Congratulations Alexey!

Can you post a brief rationale of your model?
Old 12-07-2015, 09:44 AM   #3
LQ 5k Club
Registered: Jan 2011
Location: Nowhere near you, thank God.
Distribution: OSX Sierra
Posts: 8,573
Blog Entries: 15

Rep: Reputation: Disabled
Welcome to LQ!
And what an entrance!! That's quite impressive.
Old 12-07-2015, 10:09 AM   #4
LQ Newbie
Registered: Dec 2015
Posts: 3

Original Poster
Rep: Reputation: Disabled
(from the spec)

1.1. Motivation

1.1.1. Motivation: Usability

In short: Usability issues in IPv6.

IPv6 solved the scalability problems of IPv4, and simplified some protocol
details, but created a new problem.

The motivation to write a new TCP/IP stack is due to exhaustion of IPv4
address space and also due to the "alien" nature of IPv6, where network
engineers are forced to use very-long addresses, that are hexadecimal,
hard to read & write, hard to compare, hard to memorize and hard to debug,
at least at the IP level.

Worse yet, forced link-local addresses, which adds needless complexity.
I figured, that just representing IPv6 very-long 128-bit addresses in
dotted decimal format would have not solved those issues.

DNS (Domain Name System), while solves the usability problem at a higher
level of the stack, still leaves low level administration issues unsolved.

Something like this:

2001:db8:2e1:1a73:149f:88ff:fe81:6116 absolutely not readble by a human. Not memorizable either.

What's the point of a protocol, that has more addresses than the amount
of sand grains in the Sahara desert ?
Or more than stars in the known Universe?
Sure, it looks cool on paper, but absolute usability disaster in reality.

1.1.2. Motivation for "Five Fields" and 50-bits

I wanted something simpler, with a look & feel akin to IPv4.
Bigger address range requirements mandated adding an additional field.
5 fields of 8-bits would have resulted in 40-bits, ~1 trillion addresses,
or x256 times bigger than IPv4. Not good enough for the next century.
This is for 15 decimal digits in human memory.
But can I do better? Well, it turns out I can.

The trick is to make it short enough so that addresses are easy to read/
compare & memorize, a problem solved by IPv4, while long enough to handle
the future requirements of the Internet, a problem solved by IPv6.

50-bit address range theoretically gives me 5 fields of 0...1023 in each,
but to improve human reading/typing/memorizing/comparing, the fields were
limited to 3 decimal digits each.
That is range was limited to 0...999 in each field.
i.e. Address range from up to 1023.1023.1023.1023.1023
was artificially limited up to 999.999.999.999.999 to improve usability.
Sacrifice of ~12.5 of available address range for the sake of usability.
Still gives us over 230,000x times more addresses than IPv4, more than
enough for the next several centuries or so...
And this is at a cost of only 15 decimal digits.
Same as five fields of 8-bits BTW, and only 3 digits more than IPv4.

With this kind of addressing, using IP and visualizing networks in human
brain memory becomes easy again !

IP addresses, as used by millions of network engineers & administrators on
a daily basis, should be not just computer friendly, but also human-friendly,
as network engineers are humans.

1.1.3. Motivation: IPv6 is too complex

Another issue with IPv6 is that it has *too many* features, evething
including the kitchen sink. Theoretically it is possible to design
a network, that includes everything from physical/data-link layer and
up to transport, perhaps even applications, but then it would be hard
to understand, hard to change and hard to evolve.

A monster like Neighbor Discovery Protocol (NDP) is very complex indeed,
and should be cut into pieces. Much of it's functionality logically
belongs to DHCP(or Auto-IP) and ARP, two separate pieces.

Same is true for IGMP / IPv6 MLD - unnecessary bloat, at least for link-
local Multicast implementations, that have replaced Broadcast of IPv4.
Should become optional module.

Link-local addresses also add unnecessary complexity.

IPv5, in contrast, is more minimalistic, offloading features to optional
modules, allowing for simpler implementations.

Fortunately TCP/IP (v4) protocol stack consists of digestable blocks.

P.S. I am aware that IPv5 was used for "Internet Stream Protocol" at one
point in time, but since it was not deployed, I think I can reuse that
number to indicate both "five fields" as well as a hybrid between IPv4
and IPv6. IP-FF has nothing to do with "Internet Stream Protocol".

"Perfection is achieved not when there is nothing more to add, but when
there is nothing left to take away". Antoine de Saint-Exupery.
Old 12-11-2015, 09:09 AM   #5
Registered: Apr 2009
Location: Oz
Distribution: slackware64-14.0
Posts: 866

Rep: Reputation: 264Reputation: 264Reputation: 264
Unfortunately what might be easy for humans is bad for computers and considering the processing time and memory required is an important design issue when building routers.

The addresses are not meant to be easy for humans to understand they are designed for the computers that process them.

Also you should have a good long think about how your idea would work for sub-netting when your deliberately limiting the decimal notation to be less than the binary system backing it.
Old 12-11-2015, 09:21 AM   #6
LQ Newbie
Registered: Dec 2015
Posts: 3

Original Poster
Rep: Reputation: Disabled

I disagree that IP addresses must be unreadable.

I had a think, and it works fine (on paper), including sub-netting.


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
"Occupation" and "Interests" fields in profile. dugan LQ Suggestions & Feedback 6 11-03-2015 03:36 PM
I add new protocol in ns-2 name "Multi-Level feedback Congestion Control Protocol" bhavinsorathiya Linux - Software 6 02-15-2014 11:06 AM
I add new protocol in ns-2 name "binary marking congestion protocol(bmcc )" bhavinsorathiya Linux - Software 10 01-16-2014 09:18 AM
"socks5" -> "http" proxy protocol, or ssh tunnel to sock5 ? I'm beyond http p vmicho Linux - Networking 2 12-16-2003 06:32 AM
anging "Protocol" option to "IMPS/2" in XF86Config-4 causes problems zstingx Linux - General 2 10-27-2003 10:47 AM > Forums > Linux Forums > Linux - Networking

All times are GMT -5. The time now is 09:37 AM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration