Когда не работает cef

Cisco Express Forwarding

Материал из Xgu.ru

Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Cisco Express Forwarding (CEF) — технология высокоскоростной маршрутизации/коммутации пакетов, использующаяся в маршрутизаторах и коммутаторах третьего уровня фирмы Cisco Systems, и позволяющая добиться более быстрой и эффективной обработки транзитного трафика.

Функционал, который поддерживает CEF:

CEF не работает в следующих случаях:

  • Включен ACL Logging (в конце ACL добавлено слово log, например deny ip any any log)
  • Пакеты предназначены для самого маршрутизатора/коммутатора.
  • Нет L2 Adjacency.

Содержание

[править] FIB

Forwarding Information Base (FIB) или CEF Table — таблица для быстрой пересылки пакетов. Строится на основе Routing Table и Adjacency Table. Adjacency Table в свою очередь строится на основе ARP Table. Различают 2 вида CEF — Software CEF (можно увидеть на ISR G1/G2 и 7200) и Hardware CEF (можно увидеть на 6500/7600, Nexus 7000 и ASR9000). Hardware CEF — это когда построенная FIB хранится в быстрой памяти TCAM (Ternary Content Addressable Memory). Итого FIB — это таблица, содержащая маршрут, исходящий интерфейс и L2 destination.

Вывод и параметры команд, которые относятся к CEF, могут отличаться в зависимости от версии IOS и модели оборудования.

Но, как правило, команды просмотра начинаются на show cef, show ip cef, show adjacency

[править] Adjacency Table

Строка CA0111480008CA00114800080800 читается следующим образом:

  • CA0011480008 — это source мак-адрес интерфейса, через который будет отправляться пакет на 100.0.0.2:
  • CA0111480008 — это destenation мак-адрес ca01.1148.0008:
  • 0800 — это EtherType (в данному случае у нас это IPv4 0x0800).

[править] CEF epoch

В FIB и adjacency table есть понятие версии, которая называется epoch. Диапазон значений epoch от 0 до 255.

Значение epoch увеличивается, при инициации перестроения таблицы. Это можно сделать вручную, очистив информацию CEF.

На практике epoch используется, например, при переключении между supervisor engine в технологии NSF:

  1. Во время переключения, в таблицах CEF увеличивается значение epoch.
  2. После того как протоколы маршрутизации обновили информацию в RIB, соответственно обновляются и записи в таблицах CEF. Обновленным записям назначается новое значение epoch.
  3. После завершения обновления, все записи в FIB и adjacency table, у которых значение epoch меньше текущего, удаляются.

[править] Просмотр значения epoch для FIB

Например, текущее значение epoch равно 0:

При корректной работе, значение epoch для всех префиксов должно быть равным этому глобальному значению. Отображение значения epoch для конкретного префикса на примере маршрута по умолчанию:

Когда в FIB добавляется новая запись, то значение epoch для нее устанавливается равным текущему глобальному значению. То есть, значение epoch не увеличивается, когда добавляется какой-то префикс в FIB:

[править] Обновление значения epoch для FIB

С помощью команды clear cef table ipv4 можно вручную обновить FIB и, соответственно, изменится значение epoch(в некоторых IOS также может быть команда clear ip cef epoch full):

[править] Просмотр значения epoch для adjacency table

Суммарная информация об adjacency table отображает и значение epoch:

В текущей таблице adjacency есть 4 записи со значением epoch 3, которое соответствует глобальной версии таблицы. И одна запись со значением 2.

Также в суммарной информации видно, что одна запись в состоянии incomplete: 1 incomplete adjacency. Посмотрим более подробную информацию о записях в таблице adjacency:

В более подробном выводе можно увидеть значение epoch для каждой записи в adjacency table. А также теперь мы видим у какой записи значение epoch 2:

Эта запись находится в состоянии incomplete, так как не известно какой MAC-адрес соответствует next-hop 10.0.12.10.

[править] Обновление значения epoch для adjacency table

[править] Информация о таблице CEF

[править] Просмотр информации

Очистить Cisco Express Forwarding adjacency table:

На коммутаторе (hardware Layer 3-switching adjacency node):

Источник

Авария: отказал CEF на Cisco 6500 в черновиках Из песочницы

Разберём на будущее случай с аварией, когда отказал CEF на Cisco 6500

Пришла sms, что такой-то маршрутизатор (Cisco 6500) UP. Поясню, что система мониторинга просто пингует маршрутизатор и сообщает, если изменилось его состояние: DOWN/UP. Это очень опасная sms, т.к. каждый такой маршрутизатор — как микрорайон или его половина (дело происходит в сети интернет-провайдера). И даже то, что по sms маршрутизатор UP — не нормально.

Первая часть

Заходим мы с напарником на маршрутизатор — вроде доступен. Смотрим по логам: OSPF, LDP-соседство не рвал, это уже хорошо.
Предполагаем, что RP=Route Processor ушёл в 100% — так и есть.
show processes cpu sorted показывает, что-то вроде 95%/85% — т.к. цифры совпадают, то RP загружен не процессами, а прерываниями — т.е. много трафика обрабатывается CPU.

Делаем debug netdr — там очень много пакетов, помеченных VLAN 1044. Причём это multicast-пакеты, как те, которые идут в Global к маршрутизатору, так и те, которые в VRF идут от него к клиентам.

В логах мы видим кучу ошибок: Traceback, бла-бла-бла, ошибка памяти и т.п. Сразу некогда было подробно нагуглить, что это за ошибки.

VLAN 1044 на коммутаторе не ищется, только show vlan id 1044 internal usage показывает, что он выдан в интерфейс Po1, а вообще-то Po1 это L3-интерфейс! Почему так оказалось с VLAN 1044 я не знаю, разбираться не стали.

В общем, мы подумали, что проблема связана с передачей multicast. Стали пробовать гасить интерфейс Po1, через который заходит телевидение — но весь трафик пошёл через другой интерфейс, загрузка RP осталась 100%.

Про клиентские сервисы я решил, что точно страдает телевидение. При этом с самого маршрутизатора клиенты в VRF для «юриков» и в VRF для «физиков» пинговались — и я решил, что трафик интернета не страдает. При этом я видел сильную просадку трафика по графикам, но не до нуля. Вероятно, надо было тщательней выяснить момент про клиентские сервисы — пропинговать клиентов из мира, прикинуть, сколько трафика ушло, и сколько из него было телевидения.

Тут наша фантазия иссякла, уже 1 час прошёл, а мы аварию не устранили — эскалировали в отдел развития сети и уведомили начальника. Завели заявку самого высокого приоритета, описали симптомы, свои действия. Я написал в техподдержку, чтобы они учитывали эту аварию при звонках клиентов и сообщали голосом, если будут массовые жалобы клиентов, включенных с этого маршрутизатора.

На этом первая часть заканчивается.

Вторая часть

Итак, мы сдали проблему в отдел развития сети. Но мы оба с напарником не выключились из работы по заявке.

Всё осложнялось тем, что вечер, 21:00-22:00, ЧНН.
Пришлось отвлекаться на балансировку нагрузки во внешних каналах и заведение заявок по упавшим/поднявшимся коммутаторам, неработающим телеканалам и пр. Балансировку я сделал за 5 минут по опыту, и повезло, что крупных аварий не было, а мелкие я обработал или оставил на потом.

Напарник делал диагностику командами show на Cisco 6500, а я гуглил ошибки из сообщений в логах.
Добавлю, что с самого начала аварии Cisco 6500 тупила в консоли и иногда разрывала соединение.
Тут пришёл сигнал из техподдержки, что они не могут зайти на коммутаторы, которые включены от этого маршрутизатора, и что клиенты массово жалуются на торможение сайтов и пингуются с огромными потерями — тут стало понятно, что страдают все сервисы.

Я уже подумал по опыту, что отдел развития сети будет дебажить, а потом всё равно всё закончится перезагрузкой.:) Так что позвонил начальнику монтажников, чтобы он брал консоль с GSM-модемом и ехал на узел связи. Там он должен подключить консоль к Cisco 6500, мы через GSM зайдём на эту консоль и после этого перезагрузим Cisco 6500. Это нужно на тот случай, если после перезагрузки коммутатор не взлетит, и придётся его оживлять.
У начальника монтажников бойцов было мало, некоторым из них предстояли ночные работы, так что он поехал сам.

Ещё я всю информацию своевременно отражал в заявке, не ждал, что отпишусь после устранения аварии. И это правильно — все должны видеть, на какой стадии находится устранение аварии сейчас.

В общем, я нагуглил на cisco.com по сообщению об ошибке какой-то баг Cisco 7600, где сообщалось, что это «глюк», в результате которого коммутатор перестаёт добавлять в CEF новые маршруты. «Глюк» может возникнуть на ровном месте, т.е. не обязательно вызван какими-то обстоятельствами. Помочь должна перезагрузка маршрутизатора (ха-ха!).
Версия IOS у нас была не в точности та же, что в описании бага, но по цифрам такая же, только буквами отличалась.

Вот то сообщение в логах:
%MLSCEF-SP-2-FREEZE: hardware switching disabled on card
http://www.cisco.com/en/US/docs/ios/12_2sr/release/notes/122SRcavs5.html говорит, что это баг CSCsg40573.

И я заметил по графикам, что просело до нуля количество пакетов, обрабатываемых PFC. Я из этого сделал вывод, что страдают все сервисы. Я был взволнован крупной аварией и не очень хорошо владел темой, поэтому я не подумал спокойно: «А что же обрабатывает PFC?» — А PFC как раз продвигает пакеты CEF’ом.
На том маршрутизаторе нет DFC, поэтому всю коммутацию делает PFC.
Ещё меня смутило, что в в выводе команды show ip cef — маршруты были.
Мой напарник по результатам своей диагностики пришёл к выводу, что проблема с CEF.

В это время мне позвонил начальник и сказал, что они с отделом развития сети пришли к выводу, что CEF просто не коммутирует пакеты, и надо перезагружать маршрутизатор.

Они увидели это по команде
#show mls cef hardware

CEF TCAM v2: (FROZEN)
Size: 262144 entries
65536 rows/device, 4 device(s)
32 entries/mask-block
8192 total blocks (32b wide)
1212416 s/w table memory
Options:
sanity check: off
sanity interval: 301 seconds
consistency check: off
consistency interval: 31 seconds
redistribution: off
redistribution interval: 120 seconds
redistribution threshold: 10
compression: off
compression interval: 31 seconds
tcam/ssram shadowing: on
Operation Statistics:
Entries inserted: 0000000026486227
Entries deleted: 0000000026473952
Entries compressed: 0000000002044646
Blocks inserted: 0000000000476132
Blocks deleted: 0000000000475614
Blocks compressed: 0000000000311462
Blocks shuffled: 0000000000007388
Blocks deleted for exception: 0000000000000000
Direct h/w modifications(TCAM): 0000000000000000
Direct h/w modifications(SSRAM):0000000000000000

Background Task Statistics:
Consistency Check count: 0000000001845943
Consistency Errors: 0000000000000000
SSRAM Consistency Errors: 0000000000000000
Sanity Check count: 0000000000191853
Sanity Check Errors: 0000000000000001
Compression count: 0000000000263706

Exception Handling status: on
L3 Hardware switching status: off
Fatal Error Handling Status: Freeze
Fatal Errors: 0000000000000001

Fatal Error Recovery Count: 0000000000000000

SSRAM ECC error summary:
Uncorrectable ecc entries: 0
Correctable ecc entries: 0
Packets dropped: 0
Packets software switched: 0

FIB SSRAM Entry status
— Key: UC — Uncorrectable error, C — Correctable error
SSRAM banks: Bank0 Bank1
No ECC errors reported in FIB SSRAM.

ADJACENCY SSRAM Application errors:
— The logger for the ADJ sanity checker is disabled

Double Allocation Attempts :0
Double Freeing Attempts :0
Freeing Others’ Entries Attempts :0
Writing Others’ Entries Attempts :0
Writing To Un-Allocated Entries :0
Suspicious Application Calls :0

Надо обратить внимание на статус CEF — FROZEN и на то, что присутствует Fatal Error.

Мы не стали ждать приезда начальника монтажников, хотя он уже был на подходе, сохранили конфиг, перезагрузили маршрутизатор.
Через 10 минут он загрузился и дальше работал нормально.
Мы проверили, что все сервисы клиентов восстановились.

Прошло уже 2-3 дня, а в логах нет сообщений об ошибках.
Т.е. это был разовый программный сбой.

Источник

Что такое CEF (закрытый фонд) простыми словами?

Несмотря на то, что они торгуются на фондовых биржах более века, фонды закрытого типа (CEF) недостаточно изучены. Распространенное заблуждение состоит в том, что CEF – это тип традиционного паевого инвестиционного фонда или биржевого фонда (ETF).

Закрытый фонд – это не традиционный паевой инвестиционный фонд, закрытый для новых инвесторов.

На самом фундаментальном уровне CEF – это инвестиционная структура, организованная в соответствии с положениями Закона об инвестиционных компаниях 1940 года. CEF – это тип инвестиционной компании, акции которой торгуются на открытом рынке, как и акции или ETF.

  • Закрытые фонды – это тип инвестиционной компании, акции которой торгуются на открытом рынке, как акции или ETF.
  • Капитал не поступает в фонды и не выходит из него, когда акционеры покупают или продают акции.
  • Как и акции, акции торгуются на открытом рынке.
  • Цена акций CEF почти всегда отличается от стоимости чистых активов (СЧА).
  • Благодаря стабильной базе активов CEF может инвестировать в неликвидные ценные бумаги и выпускать долговые или привилегированные акции.

Почему их называют фондами закрытого типа?

Как и традиционный паевой инвестиционный фонд, CEF инвестирует в портфель ценных бумаг и обычно управляется компанией по управлению инвестициями. Но в отличие от паевых инвестиционных фондов, CEF закрыты в том смысле, что капитал не поступает в них регулярно, когда инвесторы покупают акции, и не утекает, когда инвесторы продают акции. После первичного публичного предложения (IPO) акции не торгуются напрямую, как в случае с открытыми паевыми фондами.

Вместо этого акции, как правило, торгуются на бирже, и другие участники рынка выступают в качестве соответствующих покупателей или продавцов. Сам фонд не выпускает и не выкупает акции ежедневно. Как и акции, CEF проводят первичное публичное размещение акций при запуске.

На капитал, привлеченный вовремя IPO, управляющие портфелем покупают ценные бумаги, соответствующие инвестиционной стратегии фонда.

После IPO осталось всего 5 способов увеличить капитал в портфеле.

  1. Сделать правильный инвестиционный выбор, который повысит стоимость чистых активов.
  2. Выпуск долговых обязательств, тем самым привлекая заемные средства фонда.
  3. Выпуск привилегированных акций с привлечением средств фонда.
  4. Проведение вторичного размещения акций (публичная продажа новых акций).
  5. Проведение предложения прав (предоставление существующим акционерам права вкладывать больше капитала в фонд пропорционально их существующей собственности).

Точно так же есть только 5 способов утечки капитала из CEF.

  1. Выплаты акционерам.
  2. Неудачные инвестиционные решения.
  3. Тендерное предложение на обратный выкуп акций, которое является методом контроля скидок.
  4. Ликвидация фонда.

Таким образом, поскольку капитал не поступает свободно в и из CEF, они называются «закрытыми» фондами.

Закрытая структура CEF имеет и другие последствия.

В отличие от открытых ETF, управляющий закрытым фондом не сталкивается с риском реинвестирования из-за ежедневного выпуска акций.

Управляющий закрытым фондом не должен держать излишки денежных средств для погашения.

Поскольку нет необходимости быстро собирать денежные средства для неожиданного погашения, капитал считается более стабильным, чем в открытых фондах. Это стабильная капитальная база.

Относительно стабильная капитальная база, в свою очередь, порождает еще два атрибута:

Во-первых, это делает CEF хорошей структурой для инвестирования в неликвидные ценные бумаги, такие как акции развивающихся рынков, муниципальные облигации и т. д.

Более высокий риск, связанный с инвестированием в неликвидные ценные бумаги, может привести к более высокой прибыли для акционеров.

Во-вторых, регулирующие органы разрешают фондам выпускать долговые обязательства и привилегированные акции со строгими ограничениями на леверидж (заемные средства). Фонд может выпускать долговые обязательства в размере до 50% от чистых активов. Другой способ взглянуть на это: на каждый доллар долга у фонда должно иметь 3 доллара активов (включая активы из долга). Это обычно называется пределом кредитного плеча 33%.

Фонд может выпускать привилегированные акции на сумму до 100% чистых активов. Другой способ взглянуть на это состоит в том, что на каждый доллар выпущенных привилегированных акций у фонда должно быть 2 доллара активов (включая активы от привилегированных акций). Это обычно называется лимитом кредитного плеча 50%.

Источник

Читайте также:  Электроплита hansa не работает одна конфорка
Оцените статью