Инициализация машины состояний
Удобно описывать процедуру согласования сессии LDP в терминах машины конечных состояний (FSM). Мы определяем, что в FSM LDP имеется пять возможных состояний, а переходы между состояниями определяются таблицей, представленной ниже.
Таблица переходов между состояниями при инициализации сессии
Состояние
Событие
Новое состояние | ||||
NON EXISTENT | Сессия TCP-соединения установлена | INITIALIZED | ||
INITIALIZED | Передача сообщения инициализации (Активная роль) |
OPENSENT | ||
Получение приемлемого сообщения инициализации. (Пассивная роль) | OPENREC | |||
Действие: Передача сообщения инициализации и KeepAlive | ||||
Получение любого другого сообщения LDP | NON EXISTENT | |||
Действие: Передача сообщения об ошибке (NAK) и закрытие транспортного соединения | ||||
OPENREC | Получение сообщения KeepAlive | OPERATIONAL | ||
Получение любого другого сообщения LDP | NON EXISTENT | |||
Действие: Передача сообщения об ошибке (NAK) и закрытие транспортного соединения | ||||
OPENSENT | Получение приемлемого сообщения инициализации | OPENREC | ||
Действие: Передача сообщения KeepAlive | ||||
Получение любого другого сообщения LDP | NON EXISTENT | |||
Действие: Передача сообщения об ошибке (NAK) и закрытие транспортного соединения | ||||
OPERATIONAL | Получение сообщения Shutdown | NON EXISTENT | ||
Действие: передача сообщения Shutdown и закрытие транспортного соединения | ||||
Получение других сообщений LDP | OPERATIONAL | |||
Таймаут | NON EXISTENT | |||
Действие: Передача сообщения завершения и закрытие транспортного соединения |