Getting data to a device that has moved comes down to one choice. Send it to where the device lives and let home forward it, or ask where it is and send it straight there.
Words you will meet
-
Correspondent correspondent Simple Whoever is talking to the mobile device. Precise The Internet-connected host that wants to communicate with a mobile device, which may be in its home network or roaming in a visited one. Whether the correspondent has to know which is the difference between indirect and direct routing. introduced in ch. 7 — open in glossary — whoever is talking to the mobile device.
-
Permanent address — the address the device keeps wherever it goes.
-
Handover handoff Simple Changing which base station you are attached to. Precise What happens when a mobile host moves beyond one base station's range and into another's, changing its point of attachment to the larger network. Also called handover. introduced in ch. 7 — open in glossary — moving responsibility for a device from one base station to another.
-
Indirect routing indirect routing Simple Send it home first, and let home forward it. Precise The correspondent addresses the mobile device's permanent address; the home network intercepts the data and tunnels it to the device's current location. It asks nothing of the correspondent, and it is inefficient — data may travel a long way to the home network and then back again. introduced in ch. 7 — open in glossary — send it home; home forwards it on.
-
Direct routing direct routing Simple Learn where it is, then send straight there. Precise The correspondent first learns the mobile device's current location and addresses data there. More efficient than indirect routing, at the cost of making the correspondent do work that indirect routing hides from it. introduced in ch. 7 — open in glossary — ask where it is, then send straight there.
-
Triangle routing triangle routing problem Simple Going home first, even when your friend is next door. Precise Indirect routing's inefficiency: datagrams addressed to a mobile device are forwarded first to its home network and then to the visited network, even when a much more efficient route exists between the correspondent and the device. In the book's worst case, two people sitting side by side send data across the world and back. introduced in ch. 7 — open in glossary — the detour indirect routing forces.
-
Local breakout local breakout Simple Letting the visited network send your data straight out, instead of back home. Precise In LTE, the option where a datagram from a roaming device is transmitted from the visited network directly to the correspondent, rather than tunnelled back to the home gateway router first. It is step 4b of Figure 7.26. introduced in ch. 7 — open in glossary — letting the visited network reply directly.
Why this matters
This is the most transferable section in the chapter. It has almost no technology in it.
Sections 7.3 and 7.4 were two industries answering the same questions with different hardware. Here the book strips the hardware away and asks what must happen for data to reach something that moves. The answer is a short list, and it is the same list for cellular networks and for the Internet.
Read it once carefully and section 7.6 becomes bookkeeping.
Not everything that moves is mobile
A mobile device, in the broadest sense, is one that changes its point of attachment to the network over time. But “mobility” means many things in the computer and telephony worlds, so the book grades it first.
| What the device does | Mobile to the network layer? | What handles it | |
|---|---|---|---|
Cells marked ⓘ have an explanation — click to read it.
A spectrum, not a switch. Three of these four cases need nothing new. Click a cell for the reason.
Only cases (c) and (d) need anything new. What they need is handover handoff Simple Changing which base station you are attached to. Precise What happens when a mobile host moves beyond one base station's range and into another's, changing its point of attachment to the larger network. Also called handover. introduced in ch. 7 — open in glossary : a transfer of responsibility for forwarding datagrams to and from one access point or base station to the device. Section 7.6 covers it in detail.
What makes (a) not count
A device that powers down before it moves never has to be found. It associates with one access network, uses it, disassociates, and starts over somewhere else.
Nothing is in flight while it travels, so nothing can be misdelivered. That is why the whole of section 7.5 is about ongoing connections. The words appear in two of the four labels above, and they are what turns movement into a problem.
A home, and everywhere else
Every cellular subscriber has a home network home network Simple The network a mobile device permanently belongs to. Precise A mobile device's permanent home, whose address the device keeps regardless of where it currently is. All of chapter 7's mobility discussion is about getting data to a device that is not currently on it. introduced in ch. 7 — open in glossary with some provider. Section 7.4.1’s HSS (Home Subscriber Service) Home Subscriber Service The 4G database holding what the home network knows about each subscriber. introduced in ch. 7 stores what that home knows: a globally unique device identity from the SIM card, which services the subscriber may access, cryptographic keys, and billing information.
When a device connects to a cellular network that is not its home network, it is roaming on a visited network visited network Simple Wherever the device happens to be now. Precise Any network a mobile device is attached to other than its home network. introduced in ch. 7 — open in glossary , and the two networks must coordinate.
The Internet has no such thing
The book is blunt about it. There is no notion of a home or visited network deeply embedded in the Internet’s architecture.
In practice a student’s home network might be the one their school runs, and a mobile professional’s might be their company’s. But that is a convention, not architecture. Mobile IP (Internet Protocol) Internet Protocol The network-layer protocol that defines the datagram format and addressing every Internet device must use. introduced in ch. 1 [Perkins 1998, RFC 5944] strongly incorporated the idea and has seen limited deployment. Eduroam [Eduroam 2020] builds authenticated access across visited networks on top of ordinary IP (Internet Protocol) Internet Protocol The network-layer protocol that defines the datagram format and addressing every Internet device must use. introduced in ch. 1 , without changing it.
Keep this asymmetry in view. It is why section 7.6 has two stories to tell, not one.
Having a home network buys two things:
- a single place where information about the device can be found; and
- a coordination point for communication to and from the device while it roams.
Bob moves out
The book’s own analogy, and it is worth keeping. Bob is a 20-something adult who moves out of the family home. He lives in a series of dormitories and apartments, and changes address often.
An old friend, Alice, wants to reach him. How? She contacts the family — because a mobile 20-something usually registers a current address with his parents, if only so they can send money towards the rent. The family home becomes the unique location others go to as a first step.
After that, post can go either of two ways. Indirect, with mail sent to the family home and forwarded on. Or direct, with Alice using the address she got from Bob’s parents.
Those are the only two answers, and the rest of this section is them.
Where the picture stops. Post tolerates delay and arriving out of order; an ongoing connection does not, which is the whole reason mobility is a network-layer problem at all. And Alice, once her friends have given her an address, goes on writing to it — where direct routing has to be told again every time Bob moves.
The elements, and the correspondent’s problem
Drag any device to rearrange the picture. Hover a link to see its rate, delay and length.
Play journey 1, then journey 5. Journey 1 walks two sides of the triangle; journey 5 walks one. That difference is the whole of section 7.5.3, and the price of the short side is journey 4 — somebody had to ask the HSS first.
Read this diagram as text
- permanent IP 128.119.40.186 — wireless link — base station
- base station — wired link — home network gateway
- HSS — where the device is — wired link — home network gateway
- mobility manager — wired link — home network gateway
- the same device, roaming — NAT IP 10.0.0.99 — wireless link — base station
- base station — wired link — visited network gateway
- mobility manager — wired link — visited network gateway
- home network gateway — wired link — visited network gateway
- correspondent — wired link — home network gateway
- correspondent — wired link — visited network gateway
An Internet-connected host — the book calls it the correspondent correspondent Simple Whoever is talking to the mobile device. Precise The Internet-connected host that wants to communicate with a mobile device, which may be in its home network or roaming in a visited one. Whether the correspondent has to know which is the difference between indirect and direct routing. introduced in ch. 7 — open in glossary — wants to reach a device that might be at home or might be roaming. The development below takes a 4G and 5G view, because those networks have such a long history of supporting mobility. But the challenges and the solutions apply equally to cellular networks and to the Internet.
The device has a globally unique identifier. In 4G that is the International Mobile Subscriber Identity and its phone number, on the SIM card. For mobile Internet users it would be a permanent IP address in the home network’s range, as in Mobile IP.
It also needs an address in the visited network. There are three possibilities: keep using the permanent home address, take a new address from the visited network’s range, or take one via NAT (Network Address Translation) Network Address Translation Letting a whole private network share one public IP address by rewriting addresses and ports. introduced in ch. 4 (section 4.3.4). In the latter two the device now has a transient identifier as well as the permanent ones held in its home HSS. That is a letter addressed to the house Bob currently lives in, rather than to his parents.
The approach that does not work
The book identifies three approaches and says up front that the latter two are adopted in practice. Here is the first.
Add nothing new at all. A visited network simply advertises, by BGP (Border Gateway Protocol) Border Gateway Protocol The protocol ISPs use to tell each other which destinations they can reach; its rules follow the customer-provider and peering relationships. introduced in ch. 5 , a highly specific route — the device’s full 32-bit permanent address — telling every other network that it has the path. The neighbours propagate it as part of the normal BGP procedure. Since datagrams always go to the router advertising the most specific destination (section 4.3’s longest prefix match), they all arrive.
When the device leaves, the new visited network advertises a new highly specific route and the old one withdraws its own.
This solves two problems at once, with no change to the network layer. Other networks know where the device is, and routing to it is easy.
What each symbol means
- mobile devices — how many phones need a route of their own (devices)
- bytes per entry — memory for one forwarding-table row (bytes)
- roams per day — how often one device changes visited network (roams/day)
Read aloud: Give every mobile device a route of its own, and every router in the world has to store one row per phone and change that row every time the phone moves.
Table in one router80.0 GB
every mobile device needs its OWN route — a full 32-bit host address
memory = mobile devices x bytes per entry
= 5.00e+9 x 16 bytes
= 80.0 GB, in EVERY router that carries a full table
section 5.3 ran this same sum for a flat Internet, and rejected it for the same reasonRoute changes worldwide2.31e+5 route changes/s
each roam withdraws one route and advertises another
changes/s = devices x roams per day / 86400
= 5.00e+9 x 4 / 86400
= 2.31e+5 route changes every second, worldwide
BGP converges over minutes (section 5.4.2). This does not converge at all.Change any number above and the arithmetic re-runs, carrying the units through.
The book calls scalability the killer drawback and moves on. These are its two halves — a size and a rate — with the arithmetic done. Section 5.3 rejected a flat Internet using the first of these sums.
The killer drawback
Scalability. Routers would have to hold forwarding-table entries for potentially billions of mobile devices, and update a device’s entry each time it roams.
The book says this clearly would not work in practice and moves on. Some additional drawbacks are explored in the problems at the end of the chapter.
The sums above are the two halves of that sentence. Section 5.3 rejected a flat Internet with the first of them.
The practical answer is to push mobility from the network core to the network edge — a recurring theme in this book’s account of Internet architecture. The natural place is the device’s home network. In much the same way that Bob’s parents track their child’s location, a mobility management entity in the home network tracks the visited network the device is in. The answer lives in a database: the HSS.
That still leaves the hard question. Only the HSS knows where the device is, not network-wide routers, so the correspondent cannot simply address a datagram to the permanent address and send it into the network. Something more must be done, and there are exactly two ways to do it.
Indirect routing
The correspondent addresses the datagram to the device’s permanent address and sends it, unaware of whether the device is at home or away. Mobility is completely transparent to it. The datagram is routed, as usual, to the home network — step 1.
The home network gateway watches for arriving datagrams addressed to a device whose home is in that network but which currently sits in a visited network. It intercepts such a datagram, consults the HSS to learn which visited network the device is in, and forwards it toward that network’s gateway — step 2. The visited gateway forwards it to the device — step 3.
The correspondent addresses the datagram to the permanent address and sends it, unaware of whether the device is at home or roaming. It is routed to the home network as usual — step 1 in Figure 7.26.
Section 4.3’s tunneling, met first for IPv6 and again in Figure 7.18 for the 4G data plane. Third time here, and the reason is the same every time: carry something somewhere without changing it.
Read all steps as text
- 1 · What the correspondent sent — The correspondent addresses the datagram to the permanent address and sends it, unaware of whether the device is at home or roaming. It is routed to the home network as usual — step 1 in Figure 7.26.
- 2 · The home gateway wraps it whole — The gateway must forward the datagram to the visited network gateway. It must also leave the correspondent’s datagram intact, because the receiving application should be unaware it was forwarded via the home network. Both goals are met by encapsulating the original complete datagram inside a new, larger one — which is exactly section 4.3’s tunneling.
- 3 · The visited gateway unwraps and translates — The visited network gateway decapsulates — it removes the correspondent’s original datagram from inside the larger one — and forwards it to the mobile device, step 3 in Figure 7.26. If NAT is used, as it is in Figure 7.26, the visited gateway performs the address translation on the way.
The reply has a choice to make. The device forwards through the visited gateway, which has to perform the NAT translation. From there:
- (4a) the datagram is tunnelled back to the home gateway and sent to the correspondent from there, or
- (4b) it is transmitted from the visited network directly to the correspondent — an approach known as local breakout local breakout Simple Letting the visited network send your data straight out, instead of back home. Precise In LTE, the option where a datagram from a roaming device is transmitted from the visited network directly to the correspondent, rather than tunnelled back to the home gateway router first. It is step 4b of Figure 7.26. introduced in ch. 7 — open in glossary [GSMA 2019a] in LTE (Long-Term Evolution) Long-Term Evolution The dominant 4G cellular standard. Its architecture is a set of gateways plus a subscriber database. introduced in ch. 7 .
The three protocols indirect routing needs
The book lists exactly what new network-layer functionality is required, and it is worth memorising, because section 7.6 checks each one off:
- Device to visited network — an association protocol. The device associates on arrival and disassociates on leaving.
- Visited network to home HSS — a registration protocol. The visited network registers the device’s location with the home HSS, and may use what it gets back to authenticate the device.
- Home gateway to visited gateway — a tunneling protocol. The sending side encapsulates and forwards; the receiving side decapsulates, performs the NAT translation, and forwards to the device.
What happens to a connection when the device moves
When a device roams from one visited network to another, the home HSS is updated and the tunnel endpoint moves. Does the device see an interrupted flow?
As long as the gap between leaving one visited network and attaching to the next is small, few datagrams are lost. And chapter 3 established that end-to-end connections lose datagrams to congestion anyway. So occasional loss caused by movement is by no means a catastrophe. If loss-free communication is needed, upper-layer mechanisms recover from it — and they cannot tell whether the cause was congestion or mobility.
This is a quietly important argument. It says mobility does not need a new reliability mechanism, because chapter 3 already built one that happens to cover this case.
Indirect routing is what the Mobile IP standard [RFC 5944] uses, and what 4G LTE networks use [Sauter 2014]. Their tunneling procedures differ just a bit from this generic account.
Direct routing
Indirect routing has an inefficiency called the triangle routing problem triangle routing problem Simple Going home first, even when your friend is next door. Precise Indirect routing's inefficiency: datagrams addressed to a mobile device are forwarded first to its home network and then to the visited network, even when a much more efficient route exists between the correspondent and the device. In the book's worst case, two people sitting side by side send data across the world and back. introduced in ch. 7 — open in glossary . Datagrams go first to the home network and then to the visited network, even when a much more efficient route exists between the correspondent and the roaming device.
The book’s worst case is worth picturing. A mobile user roams onto the very network that is home to the overseas colleague they are visiting. The two sit side by side exchanging data — and every datagram travels to the mobile user’s home network and back again.
Direct routing removes that inefficiency, at the cost of extra complexity. The correspondent first discovers which visited network the device is in, by querying the HSS in the home network — steps 1 and 2. It then tunnels datagrams from its own network directly to the gateway router in the visited network, which forwards them on — steps 3 and 4.
Play journeys 4 and 5 on the map above and compare them with journey 1.
Two new problems, in exchange
- A mobile-user location protocol is needed, so that the correspondent can query the HSS. That is in addition to the protocol the device already needs so that it can register its location with its HSS.
- The correspondent asks only once. The HSS is queried at the beginning of the session. So when the device moves to a new visited network, the correspondent does not learn about it. With indirect routing this was easy — update the HSS and move the tunnel endpoint. Here, additional protocol mechanisms would be needed to proactively update the correspondent every time the device moves. Two end-of-chapter problems explore solutions.
| Indirecteverything goes home first | Directask first, then send straight there | |
|---|---|---|
| What the correspondent must know | ||
| The path data takes | ||
| When the device moves again | ||
| Protocols it needs | ||
| Where it is used |
Cells marked ⓘ have a reason behind them — click to read it.
The book presents both and says only which is used where. Click a cell for the argument.
Three slips in these nine pages
- A wrong figure number. Page 583 refers to “the correspondent’s dilemma in Figure 7.24”. Figure 7.24 is the four degrees of mobility. The correspondent’s dilemma, and every element the sentence then lists — home and visited networks, the MME and HSS, device addressing — is Figure 7.25.
- A missing word. Page 584: “It is instructive to consider the rerouting at the home network in bit more detail” — “a bit”.
- A stray word. Page 585: “A datagram tunneling protocol between in the home network gateway and the visited network gateway router”. Drop the “in”.
Check yourself
Check yourself
0 of 8 answered1.A student disconnects from the classroom network, powers down, walks to the library, and connects there. Is this device mobile, from a network-layer point of view?
2.How strongly is the idea of a home network built into the Internet's architecture?
3.predictSuppose every visited network advertised, by BGP, a route to each roaming device's full 32-bit address. Would datagrams reach the device?
4.In indirect routing, what does the correspondent have to know about the mobile device's location?
5.Why does the home gateway encapsulate the correspondent's datagram rather than rewrite its address?
6.predictYou are roaming abroad, sitting next to a colleague whose home network is the one you are visiting. With indirect routing, where do your datagrams to each other travel?
7.Direct routing removes the triangle. What does it fail to handle well?
8.A few datagrams are lost while a device switches from one visited network to another. How serious is this?
What to remember
- Only movement with ongoing connections is a network-layer problem. A device that powers down before it moves is not mobile at all.
- Cellular networks have a strong notion of home and visited networks. The Internet does not. A home network gives you one place to look up a device, and one place to coordinate through. Giving every device its own route instead fails on scale, not on correctness.
- Indirect routing sends everything through the home network, which intercepts and tunnels to the visited gateway. Direct routing queries the HSS first and tunnels straight there: it removes the triangle, adds a location protocol, and copes badly when the device moves again.