11. Работа мобильного узла
11.1. Концептуальные структуры данных
Каждый мобильный узел должен (MUST) поддерживать список обновлений привязки (Binding Update List).
Список обновлений привязки хранит информацию для каждого посланного данным мобильным узлом сообщения Binding Update, для которого время жизни привязки еще не истекло. Список обновлений привязки содержит все привязки, посланные мобильным узлом либо его домашнему агенту, либо узлам-корреспондентам. Он также содержит сообщения Binding Update, которые ожидают окончания процедуры обратной маршрутизируемости до того момента, когда они могут быть посланы. Однако для нескольких сообщений Binding Update, посланных на один и тот же адрес места назначения, список обновлений привязки содержит только самое последнее посланное на это место назначения сообщение Binding Update (т.е. сообщение с наибольшим значением порядкового номера). Список обновлений привязки может (MAY) быть реализован любым способом, который согласуется с внешнем поведением, описанным в данном документе.
Концептуально, элемент списка обновлений привязки содержит следующие поля:
- IP-адрес узла, которому было послано сообщение Binding Update.
- Домашний адрес, для которого это сообщение Binding Update было послано.
- Временный адрес, посланный в данном сообщении Binding Update. Это значение необходимо мобильному узлу для того, чтобы определить, послал ли он сообщение Binding Update, задав свой новый временный адрес этому месту назначения после смены своего временного адреса.
- Начальное значение поля Lifetime, посланное в данном сообщении Binding Update.
- Оставшееся время жизни этой привязки. Это время жизни инициализируется из значения поля Lifetime, посланного в сообщении Binding Update, и декрементируется до тех пор, пока не станет равным нулю. В этот момент этот элемент должен (MUST) быть удален из списка обновлений привязки.
- Максимальное значение поля Sequence Number, посланное на это место назначения в предыдущих сообщениях Binding Update. Поле Sequence Number имеет длину 16 бит, и все сравнения значений порядковых номеров должны (MUST) выполняться по модулю 2**16 (см. разд. 9.5.1).
- Время, когда было послано последнее сообщение Binding Update на данное место назначения, как это требуется для реализации ограничения скорости посылки сообщений Binding Update.
- Состояние всех повторных передач, потребовавшихся для данного сообщения Binding Update. Это состояние включает время, оставшееся до следующей попытки повторной передачи сообщения Binding Update, и текущее состояние механизма экспоненциальной отсрочки повторных передач.
- Флаг, указывающий на то, должны ли, или нет, на данное место назначения посылаться будущие сообщения Binding Update. Мобильный узел устанавливает этот флаг в элементе списка обновлений привязки, когда он получает сообщение об ошибке ICMP «Parameter Problem, Code 1» в ответ на сообщение обратной маршрутизируемости или на сообщения Binding Update, посланные на это место назначения, как описано в разд. 11.3.5.
Список обновлений привязки используется для того, чтобы определить, должен ли конкретный пакет посылаться непосредственно узлу-корреспонденту, или туннелироваться через домашнего агента (см. разд. 11.3.1).
Концептуально список обновлений привязки содержит следующие данные, связанные с выполнением процедуры обратной маршрутизируемости. Эти данные важны только для сообщений Binding Update, посылаемых узлам-корреспондентам.
- Время, когда на данное место назначения в последний раз посылалось сообщение Home Test Init или Care-of Test Init, которое требуется для реализации ограничения скорости для процедуры обратной маршрутизируемости.
- Состояние всех повторных передач, потребовавшихся для данной процедуры обратной маршрутизируемости. Это состояние включает время, оставшееся до следующей попытки повторной передачи, и текущее состояние механизма экспоненциальной отсрочки повторных передач.
- Значения идентифицирующих цепочек, используемые в сообщениях Home Test Init и Care-of Test Init.
- Маркеры home keygen token и care-of keygen token, полученные от узла-корреспондента.
- Индексы одноразовых номеров home nonce index и care-of nonce index, полученные от узла-корреспондента.
- Время, когда каждый из маркеров и одноразовых номеров был получен от узла-корреспондента, которое требуется для реализации повторного использования при перемещениях.