Многоцелевое расширение почты Интернет

Установление транспортного соединения


Результатом обмена сообщениями Hello является формирование Hello сопредельности для LSR1, которое определяет канал связи (L), и пространства меток LSR1:a и LSR2:b.

  1. Если LSR1 не имеет LDP сессии обмена пространствами меток LSR1:a и LSR2:b, он пытается сформировать TCP-соединение для новой LDP сессии с LSR2.

    LSR1 определяет транспортные адреса, которые следует использовать на конце (A1) и на конце LSR2 (A2) TCP-соединения. Адрес A1 определяется следующим образом:

  1. Если LSR1 использует опционный объект, в сообщениях Hello LSR2 он посылает транспортный адрес (TLV), чтобы анонсировать адрес. A1 является адресом, который анонсируется LSR1 через посредство опционного объекта;
  2. Если LSR1 не использует опционный объект транспортного адреса, A1 является адресом отправителя в сообщениях Hello, которые отправляет LSR2.

Аналогично, адрес A2 определяется как:

  1. Если LSR2 использует опционный объект транспортного адреса, A2 является адресом, который LSR2 анонсирует через посредство опционного объекта;
  2. Если LSR2 не использует опционный объект транспортного адреса, A2 является адресом отправителя в сообщении Hello, полученном от LSR2.

  • LSR1 определяет, будет ли он играть активную или пассивную роль в сессии установления, посредством сравнения адресов A1 и A2, как целых чисел без знака. Если A1 > A2, LSR1 играет активную роль; в противном случае - пассивную.

    Процедура сравнения A1 и A2 реализуется следующим образом:

    1. Если A1 и A2 принадлежат разным адресным семействам, они несравнимы, и сессия не может быть реализована.
    2. Пусть U1 является абстрактным целым числом без знака, полученным от A1 в виде последовательности байт, где байт, полученный первым, является наиболее значимым, а байт, полученный последним, является наименее значимым.

      Пусть U2 является абстрактным целым числом без знака, полученным от A2 аналогичным образом.

    3. Сравниваем U1 с U2. Если U1 > U2, тогда A1 > A2; если U1 < U2, тогда A1 < A2.
    4. Если LSR1 является активным, он пытается установить TCP-соединение через стандартный номер порта по адресу A2. Если LSR1 является пассивным, он ждет, пока LSR2 не установит TCP-соединение через стандартный номер порта.
    5. Заметим, что когда LSR посылает сообщение Hello, он выбирает транспортный адрес конца соединения сессии и использует Hello, чтобы анонсировать адрес, либо явно путем включения его в опционный TLV транспортного адреса или неявно, опуская TLV, и используя его в качестве адреса отправителя в сообщении Hello.

      LSR должен анонсировать тот же транспортный адрес во всех сообщениях Hello, которые объявляют о том же пространстве меток. Это требование гарантирует, что два LSR, связанные несколькими Hello-сопредельностями, используя те же пространства меток, играют ту же роль при формировании каждой из сопредельностей.



      Содержание раздела