        IP Addresses for the UK: A discussion document
        ==============================================

Version 2, 26 June 1993
ADS Benham, G8FSL.

The current IP addressing scheme (based on RSGB regions) has (at
least) two problems.
Firstly, the number of stations active on TCP/IP has meant that
the address space of some of the regions is starting to become
full: clearly if the interest in TCP/IP increases significantly
there will be problems in allocating addresses (there being only
255 possible addresses per region (reserving ".255" as a
broadcast address).
Secondly, the allocation of addresses within each region has been
in numerical order. This means that two adjacent IP addresses can
be many miles (or tens of miles) apart. This makes sensible
routing tables very difficult to produce (since, within a region,
almost every address will be an exception to almost any routing
rule).

The purpose of this proposal is to attempt to solve these
problems, and to create an IP addressing scheme for the U.K.
which will provide a useful service for a reasonable number of
years.

The National proposal is closely connected (and was in fact driven
by) the "hub" principle that has been operational in the Home
Counties for some 9 months or so.
The hub principle is intended to be the first phase of a plan to
eventually create a TCP/IP packet network within the U.K. It is
probable (and hoped that) that the bulk of amateur packet
activity will slowly move away from "vanilla" AX25 operation
towards a more layered set of protocols providing better and more
sophisticated services. Whilst the protocol set may not be TCP/IP
in the long term, the chosen set will almost certainly evolve
from TCP/IP protocols. Thus the TCP/IP network will quite
possibly provide the bulk of the U.K. network capability in the
future.
The "hub" (or "node", although the latter term is not preferred
as it can be confused with the NET/ROM terminology) is the
network access point for a TCP/IP end-user. Each hub will cover
a small area- encompassing up to perhaps 10 users, operating
(with low power) on a single local frequency.
Each hub within a larger area (county?) will (eventually, as the
network takes shape) be connected to an area hub. The links to
the area hub will be high(er) speed links, and on a frequency
other than that/those used for local access in the area (there
are pros and cons for using a cellular approach to frequency
reuse at the user access level). The area hubs will eventually
be connected by high speed links to regional super-hubs, which
in turn will be linked on dedicated frequencies by a U.K.
backbone at the highest data rates.

The objective of this network is to enhance and simplify the
routing of TCP/IP traffic. Each user would have a routing table
with entries for those local stations which can be reached
directly. Each user's default route would be to the local hub.
Each hub would have a routing table similarly with entries for
local stations/hubs, and a default route to the area hub (with
possible entries to send traffic for neighbouring regions to a
another hub in the right geographical direction). Similarly at
each higher level the default entry would be to send traffic "up
the network", with fixed entries for local routes.
The network would also provide centralised resources. Each local
hub could provide a POP server for mail, thereby obviating the
need for 24 hour a day operation by users. The local hub could
also provide a domain server (updated regularly over the
network), so each user need not hold a large "domain.txt" file.


In order for the routing scheme outlined above to operate, a more
structured approach to the allocation of IP addresses is
required. This is needed so that the "sub-net mask" concept can
be utilised: this is where a specified number of the leading bits
in the IP address are tested for a match, and if matched then a
specified route is used. For example, the command:

route add 44.131.7.0/24 vhf 44.131.19.127

routes all traffic for IP addresses which have the leading
("leftmost") 24 bits matching 44.131.7.0 (i.e. the addresses
44.131.7.<any>) via station 44.131.19.127 on our port "vhf".

Note 1:   "route default" is functionally the same as "route add
          0.0.0.0/0 ...", i.e. match any address.

Note 2:   "route add <address> ...." with no "/<num>" qualifier
          is functionally the same as "route add <address>/32
          ....", i.e. all 32 bits must be matched.

Note 3:   where a given address matches several patterns, the
          pattern with the greatest degree of matching (most
          bits matched) is used. Thus:
          "route add 44.131.7.0/24 vhf 44.131.19.127"
          "route add 44.131.7.5    vhf 44.131.19.129"
          will treat "...7.5" as a special routing case.


This feature is the key to the routing of traffic, in that the
"users" of a given level hub have addresses which "lead on" from
that of the hub.
Consider the following example:

End users           Local Hubs     Area Hubs      Regional Hub

44.131.32.81-\
44.131.32.82--+--44.131.32.80--\
44.131.32.83-/                 |
                               |
44.131.32.97-\                 |
44.131.32.98--+--44.131.32.96--+--44.131.32.64----\
44.131.32.99-/                 |                  |
                               |                  |
44.131.32.113-\                |                  |
44.131.32.114--+-44.131.32.112-/                  |
44.131.32.115-/                                   |
                                                  +--44.131.32.0
44.131.32.145-\                                   |
44.131.32.146--+-44.131.32.144-\                  |
44.131.32.147-/                |                  |
                               |                  |
44.131.32.161-\                |                  |
44.131.32.162--+-44.131.32.160-+--44.131.32.128---/
44.131.32.163-/                |
                               |
44.131.32.177-\                |
44.131.32.178--+-44.131.32.176-/
44.131.32.179-/

From anywhere outside this subnet, each user can be reached by
a "route add 44.131.32.0/24 <port> <gateway>" command.
The regional hub can split the traffic with 2 statements, namely:
"route add 44.131.32.64/26  <port> 44.131.32.64"
"route add 44.131.32.128/26 <port> 44.131.32.128"
The area hub 44.131.32.128 has a routing table which reads (in
its entirety!):
"route add 44.131.32.144/28 <port> 44.131.32.144"
"route add 44.131.32.160/28 <port> 44.131.32.160"
"route add 44.131.32.176/28 <port> 44.131.32.176"
"route default <port> 44.131.32.0"

Note 1:   The above example has a regular structure, although
          this is not essential.
Note 2:   It would be possible for a single site to encompass
          more than one level of hub.
Note 3:   The apparently missing addresses in the above example
          can be used by stations/hubs outside the regular
          structure.
          E.g. 44.131.32.1 could be the regional hub sysop, and
          44.131.32.65 the sysop of 44.131.32.64.
          44.131.32.32 could be a local hub directly connected
          to 44.131.32.0, as could 44.131.32.16

(I recommend that the above example is worked through, converting
the addresses into binary. To assist, taking just the third
octet:
Regional hub   Area hub       Local hub      User
00000000       01000000       01010000       01010001
                                             01010010
                              01100000       01100001
                                             01100010
               10000000       10010000       10010001
                                             10010010
                              10100000       10100001
                                             10100010
)

Note: It is important to realise that the scheme is flexible, in
that it can cater for situations where there are many users on
few hubs, or few users on many hubs (or, to a certain extent, a
combination of situations within a region or area).


Clearly in order to implement a scheme such as this, the whole
of the U.K. IP address allocation would have to be reworked. This
is not a task to be taken lightly, but the long term benefits
would seem to far outweigh the short term problems.

Practical addressing schemes divide the country into regions. It
must be borne in mind that any radio-based network suffers from
the fact that radio waves are no respecters of county boundaries,
and that whilst a station may be physically located in a given
county, in RF terms the station should be considered to be in a
neighbouring county (or country).
Nevertheless, dividing the country into regions on a county basis
is still probably the most practical method. However, with the
hub scheme proposed it is no longer the location of the
individual station which determines the region, but rather the
location of the local hub to be used. Together with the sub-net
masking of addresses, the best scheme for IP address allocation
would seem to be to devolve the allocation down to the hub
sysops.


In order to maximise the address space for IP addresses in the
U.K., it is proposed to divide the country into 32 regions. The
region number can be held in 5 bits, and the 5 bits used will be
the leading 5 bits in the third octet. This leaves 11 bits for
addressing within the region (the 3 trailing bits of the third
octet, plus the whole of the fourth octet). This would represent
an 8-fold increase in address space over the current scheme if
the individual regions were the same size: it is hoped that the
division into regions will give an additional benefit.

The base addresses of the regions will be:
44.131.0       44.131.8       44.131.16      44.131.24
44.131.32      44.131.40      44.131.48      44.131.56
44.131.64      44.131.72      44.131.80      44.131.88
44.131.96      44.131.104     44.131.112     44.131.120
44.131.128     44.131.136     44.131.144     44.131.152
44.131.160     44.131.168     44.131.176     44.131.184
44.131.192     44.131.200     44.131.208     44.131.216
44.131.224     44.131.232     44.131.240     44.131.248


The proposal for the division of the country into regions is
based on the premise that the number of amateurs running TCP/IP
in a county is a constant proportion of the total population of
that county. Thus if the IP address space is allocated on a
county-based system, then each region should have (roughly) the
same number of users.

The U.K. population, according to the 1992 Whittaker's Almanac,
is broken down as follows:

England   46.2M     Scotland  4.96M
Wales     2.80M     N.I.      1.57M          Total:    55.7M


Based on the above population figures, each of the 32 regions
should have approximately 1.74M people living in it, and the
number of regions should be allocated thus:

England:  26   Scotland: 3    Wales:    2    N.I.:     1

(The Channel Islands and the Isle of Man will be included in the
nearest mainland region).

Considering the individual countries:


                       Northern Ireland:     1 region


                            Wales:      2 regions

With a population of 2.80M, each region should encompass a
population of approx. 1.40M

The breakdown of the Welsh population (from Whittaker's Almanac)
is:
Clwyd          402k           Dyfed          342k
Gwent          432k           Gwynedd        239k
Mid Glam       527k           Powys          117k
South Glam     383k           West Glam      358k

The proposed regions are therefore:
Gwent; West, Mid, and South Glamorgan        1.70M
Clwyd; Dyfed; Gwynedd; Powys                 1.10M


                           Scotland:    3 regions

With a population of 4.96M, each region should encompass a
population of approx. 1.65M

The breakdown of the Scottish population (from Whittaker's
Almanac) is:
Borders                  103k      Central                  268k
Dumfries and Galloway    147k      Fife                     339k
Grampian                 493k      Highland                 209k
Lothian                  724k      Orkney                    19k
Shetland                  22k      Strathclyde             2.22M
Tayside                  385k      Western Isles             29k

The proposed regions are therefore:
Strathclyde                                       2.22M
Dumfries and Galloway; Borders; Lothian; Fife     1.31M
Central; Tayside; Highland; Grampian;
          Western Isles; Orkney; Shetland         1.43M


                           England:     26 regions

With a population of 46.2M, each region should encompass a
population of approx. 1.78M.

The breakdown of the English population (from Whittaker's
Almanac) is:
Avon                920k      Bedfordshire        514k
Berkshire           717k      Buckinghamshire     620k
Cambridgeshire      641k      Cheshire            937k
Cleveland           541k      Cornwall            469k
Cumbria             487k      Derbyshire          915k
Devon               998k      Dorset              645k
Durham              590k      East Sussex         671k
Essex               1.50M     Gloucestershire     521k
Greater London      6.37M     Greater Manchester  2.45M
Hampshire           1.51M     Hereford & Worcester     668k
Hertfordshire       952k      Humberside          835k
Isle of Wight       127k      Kent                1.49M
Lancashire          1.37M     Leicester           860k
Lincolnshire        574k      Merseyside          1.38M
Norfolk             736k      Northamptonshire    573k
Northumberland      301k      North Yorkshire     699k
Nottinghamshire     981k      Oxfordshire         554k
Shropshire          402k      Somerset            459k
South Yorkshire     1.25M     Staffordshire       1.02M
Suffolk             630k      Surrey              998k
Tyne & Wear         1.09M     Warwickshire        477k
West Midlands       2.50M     West Sussex         693k
West Yorkshire      1.98M     Wiltshire           553k

The proposed regions are therefore:
1.   Cornwall,Devon,Somerset (1.93M)
2.   Dorset, Wilts, Avon (2.12M)
3.   Hampshire,Isle of Wight (1.64M)
4.   Surrey, West Sussex (1.69M)
5.   Kent, East Sussex (2.16M)
6.   Greater London 1 (2.12M)
7.   Greater London 2 (2.12M)
8.   Greater London 3 (2.12M)
9.   Essex (1.50M)
10.  Herts, Beds, Bucks (2.09M)
11.  Berks, Oxon (1.27M)
12.  Suffolk, Norfolk, Cambs (2.01M)
13.  Gloucester, Hereford & Worcester, Shropshire (1.59M)
14.  Northampton, Warks, Leics (1.91M)
15.  West Midlands 1 (1.25M)
16.  West Midlands 2 (1.25M)
17.  Lincs, Notts (1.56M)
18.  Humberside, S.Yorks (2.09M)
19.  Derby,Staffs (1.94M)
20.  W.Yorks (1.98M)
21.  N.Yorks, Cleveland (1.73M)
22.  Cumbria, Northumberland, Durham, Tyne & Wear (1.98M)
23.  Lancashire (1.37M)
24.  Merseyside, Cheshire (2.32M)
25.  Greater Manchester 1 (1.23M)
26.  Greater Manchester 2 (1.23M)

In the cases of Greater London, West Midlands, and Greater
Manchester there are several regions covering one county. Each
region is to cover a specific area of the county: London is shown
below as an example (I would prefer the other two cases to be
dealt with by someone with local knowledge.

With 3 regions covering a population of 6.37M, each Greater
London region should encompass a population of approx. 2.12M

The breakdown of the population of Greater London into boroughs
(from Whittaker's Almanac) is:
Barking and Dagenham     140k      Barnet                   283k
Bexley                   211k      Brent                    226k
Bromley                  282k      Camden                   171k
(City)                   ???       Croydon                  300k
Ealing                   264k      Enfield                  249k
Greenwich                201k      Hackney                  164k
Hammersmith and Fulham   137k      Haringey                 187k
Harrow                   194k      Havering                 224k
Hillingdon               226k      Hounslow                 193k
Islington                155k      Kensington and Chelsea   128k
Kingston upon Thames     131k      Lambeth                  220k
Lewisham                 215k      Merton                   162k
Newham                   200k      Redbridge                221k
Richmond upon Thames     155k      Southwark                197k
Sutton                   164k      Tower Hamlets            154k
Waltham Forest           203k      Wandsworth               238k
Westminster              182k

The proposed regions are therefore:
1.   Northern Boroughs:
Hillingdon; Harrow; Ealing; Brent; Barnet; Enfield; Haringey;
Waltham Forest; Redbridge; Barking; Havering                2.38M

2.   Central Boroughs:
Hammersmith; Kensington and Chelsea; Westminster; Camden;
Islington; City; Hackney; Newham; Tower Hamlets; Greenwich;
Lewisham; Southwark; Lambeth                                2.13M

3.   Southern Boroughs:
Hounslow; Richmond upon Thames; Kingston upon Thames; Wandsworth;
Merton; Sutton; Croydon; Bromley; Bexley                    1.83M


                       Region Numbering

The proposed scheme for numbering the regions is also designed
for ease of routing. Essentially the plan is to perform a binary
tree structure, splitting alternate levels in the tree by
North/South and East/West. The IP address regions can therefore
be routed according to the leading bit(s) of the third octet. For
example, if the MSB of the third octet is '0' for north and '1'
for south, then a station in Scotland could route traffic for any
address with a third octet value greater than 127 to the backbone.

Taking '1' to represent south and east, and '0' to represent
north and west, the proposed split (showing the leading 5 bits
of the third octet in binary) is:

(the geography of the U.K. and the proposed regions don't fall
as neatly as wanted into this plan! In fact, certain of the
decisions that are required to make the splitting scheme work
seem very wrong!)

00000  (44.131.0-7)      Strathclyde
00001  (44.131.8-15)     Central, Tayside, Grampian, "Highlands and Islands"
00010  (44.131.16-23)    Northern Ireland
00011  (44.131.24-31)    Dumfries and Galloway, Borders, Lothian, Fife
00100  (44.131.32-39)    Cumbria, North Yorkshire, Cleveland
00101  (44.131.40-47)    Northumberland, Durham, Tyne and Wear
00110  (44.131.48-55)    Humberside, South Yorkshire
00111  (44.131.56-63)    Lincolnshire, Nottinghamshire
01000  (44.131.64-71)    Merseyside, Cheshire
01001  (44.131.72-79)    Derbyshire, Staffordshire
01010  (44.131.80-87)    Dyfed, Powys, Gwynedd, Clwyd
01011  (44.131.88-95)    Shropshire, Hereford and Worcester, Gloucestershire
01100  (44.131.96-103)   Lancashire
01101  (44.131.104-111)  West Yorkshire
01110  (44.131.112-119)  Greater Manchester 1
01111  (44.131.120-127)  Greater Manchester 2
10000  (44.131.128-135)  West Midlands 1
10001  (44.131.136-143)  West Midlands 2
10010  (44.131.144-151)  Leicestershire, Warwickshire, Northamptonshire
10011  (44.131.152-159)  Oxfordshire, Berkshire
10100  (44.131.160-167)  Hertfordshire, Bedfordshire, Buckinghamshire
10101  (44.131.168-175)  Cambridge, Norfolk, Suffolk
10110  (44.131.176-183)  North London
10111  (44.131.184-191)  Essex
11000  (44.131.192-199)  Gwent, the Glamorgans
11001  (44.131.200-207)  Wiltshire, Avon, Dorset
11010  (44.131.208-215)  Cornwall, Devon, Somerset
11011  (44.131.216-223)  Hampshire, Isle of Wight
11100  (44.131.224-231)  Central London
11101  (44.131.232-239)  South London
11110  (44.131.240-247)  Surrey, West Sussex
11111  (44.131.248-255)  Kent, East Sussex


NOTE: The Channel Islands and the Isle of Man have not been
included within any of the above regions. They have not been
ignored in this study, but the decision of which region most
sensibly fits each case has been left to those with local routing
knowledge.


Change History

The original proposal had Kent and East Sussex as 44.131.0-7, and
Strathcylde as 44.131.248-255.
Kent and East Sussex were the first region to express an interest
in implementing the new scheme, and as their "new" addresses would
have clashed with addresses already in use (under the old "RSGB
Regions" scheme) the whole numbering scheme was inverted.
