четверг, 25 октября 2012 г.

Configuring Floating Summary Routes

You can use a floating summary route when configuring the ip summary-address eigrp command. This enhancement was introduced in Cisco IOS Release 12.2. The floating summary route is created by applying a default route and administrative distance at the interface level. 

The default summary route is applied to interface with the following configuration:  
Router(config)# interface  
Router(config-if)# ip summary-address eigrp 10 0.0.0.0 0.0.0.0
The configuration of the default summary route on Router-1 sends a 0.0.0.0/0 summary route to Router-2 and blocks all other routes, including the all route, from being advertised to Router-2. However, this also generates a local discard route on Router-1, a route for 0.0.0.0/0 to the null 0 interface with an administrative distance of 5. When this route is created, it overrides the EIGRP learned default route. Router-1 will no longer be able to reach destinations that it would normally reach through the 0.0.0.0.0/0 route. 

This problem is resolved by applying a floating summary route to the interface on Router-1 that connects to Router-2. The floating summary route is applied by applying an administrative distance to the default summary route on the interface of Router-1 with the following statement: 

Router(config-if)# ip summary-address eigrp 10 0.0.0.0 0.0.0.0 250


  The administrative distance of 250, applied in the above statement, is now assigned to the discard route generated on Router-1. The 0.0.0.0/0 is learned through EIGRP and installed in the local routing table. Routing to Router-2 is restored.

  
The summary address is not advertised to the peer if the administrative distance is configured as 255

пятница, 17 августа 2012 г.

Измерение ширины LFN канала

LFN (Long Fat Network) - сеть обладающая большой пропускной способностью и большим временем задержки. Например, спутниковые или WiMAX каналы.

Чтобы получить адекватные значения пропускной способности каналов такого типа с использованием TCP, нужно иметь ввиду, что настройки TCP по умолчанию скорее всего не позволят это сделать. В windos os TCP Window Size определяется согласно данного алгоритма. Полученное значение не обеспечивает полную загрузку канала на широких линках с большой задержкой.

При тестировании LFN сетей с помощью TCP для достижения  максимальной пропускной способности канала необходимо на конечных узлах тестирования менять TCP Window size в соответствии с пропускной способностью и задержкой  тестируемого канала.
 Расчет размера окна производится по формуле:

TCP window size (kBytes)  ≥ Bandwidth (KBytes/sec) *  packet RTT (sec)

Также для удобства расчетов TCP window size можно воспользоваться этим инструментом.

Оптимальным методом тестирования максимальной пропускной способности канала является передача UDP потока со скоростью заведомо превышающей скорость канала.

Алгоритм тестирования LFN:

iperf -c 10.0.0.1 -i 10 -u -b50M -d -f k -t 600

Расчет пропускной способности канала:
http://en.wikipedia.org/wiki/Bandwidth_test

 

16 кб размер окна   100 мс задержка RTR 

16 kbyte*8=128 kbit

128000 bit/0,05c=2 560 000bit/s= 2,56 Mb/c                       100mc/2=50 mc (one way delay)



Почему нельзя полагаться на измерения полосы пропускания, полученные от стандартных программных средств? 
На скорость работы приложений может влиять очень много факторов. Один из основных - для передачи данных многие приложения используют протокол TCP, в котором есть ряд параметров, которые могут существенно влиять на скорость его работы, например размер "окна". Данный параметр определяет, сколько данных может передать отправитель без получения подтверждения об их приеме от получателя. В идеальном случае, "окно" должно расти до тех пор, пока не достигнет максимально возможного для данного канала размера. Но в каждой операционной системе этот алгоритм реализован по-разному. В Windows'XX, например, стек TCP/IP оптимизирован под применение в локальных сетях, со скоростями ~10Mbit/s и задержками ~1-70ms. Если RTT превышает указанный промежуток, размер "окна" не увеличивается, а значит остается значение по умолчанию (например MS - 8KB, Solaris - 24KB и т.д.). Даже если "окно" увеличивается, то в Windows 2000 max TcpWindowsSize равно 17520 байт, что при задержке Москва - Владивосток в ~130ms дает максимально возможную скорость передачи для одной TCP сессии между Window's машинами ~135КБ/c(~1Мбит/c). С помощью настроек в реестре Windows можно несколько улучшить ситуацию, но, к сожалению, незначительно. В UNIX-системах ситуация немного лучше.

Public iperf server:
iperf.eltel.net


Источник: http://ciao-cacao.blogspot.com/search/label/Performance

http://iperf.comcor.ru/

SNMP ifIndex


 Фиксация и определение номера интерфейса в IOS

При использовании систем управления удобно иметь возможность ссылаться на интерфейсы по номеру, который сохраняется даже после перезагрузки устройства. Начиная с Cisco IOS Release 12.1(5) эту возможность обеспечивает Interface Index Persistence feature.

Для включения данной функциональности нужно выполнить либо глобальную команду:

R(config)# snmp-server ifindex persist

Либо локальную на интерфейсе:

R(config)# interface type slot/port
R(config-if)# snmp ifindex persist

Определить номер интерфейса можно командой
R# show snmp mib ifmib ifindex type slot/port

R#show snmp stats oid

R#show snmp mib





Denial of Service Tuning for Cisco IOS Software Firewall and IPS


Cisco IOS Stateful Packet Inspection provides protection from DoS attacks as a default when an inspection rule is applied. The DoS protection is enabled on the interface, in the direction in which the firewall is applied, for the protocols that the firewall policy is configured to inspect. DoS protection is only enabled on network traffic if the traffic enters or leaves an interface with inspection applied in the same direction of the traffic's initial movement. Cisco IOS Firewall inspection provides several adjustable values to protect against DoS attacks. These settings have default values that may interfere with proper network operation if they are not configured for the appropriate level of network activity in networks where connection rates will exceed the defaults:
ip inspect max-incomplete high value (default 500)
ip inspect max-incomplete low value (default 400)
ip inspect one-minute high value (default 500)
ip inspect one-minute low value (default 400)
ip inspect tcp max-incomplete host value (default 50) [block-time minutes (default 0)]
These parameters allow you to configure the points at which your firewall router's DoS protection begins to take effect. When your router's DoS counters exceed the default or configured values, the router will reset one old half-open connection for every new connection that exceeds the configured max-incomplete or one-minute high values, until the number of half-open sessions drops below the max-incomplete low values. The router will send a syslog message if logging is enabled, and if an intrusion prevention system (IPS) is configured on the router, the firewall router will send a DoS signature message via Security Device Event Exchange (SDEE). If the DoS parameters are not adjusted to your network's normal behavior, normal network activity may trigger the DoS protection mechanism, causing application failures, poor network performance, and high CPU utilization on the Cisco IOS Firewall router.
While you cannot "disable" your firewall's DoS protection, you can adjust the DoS protection so that it will not take effect unless a very large number of half-open connections are present in your firewall router's Stateful Inspection session table.
Follow this procedure to tune your firewall's DoS protection to your network's activity:


Step 1. Be sure your network is not infected with viruses or worms that could lead to erroneously large half-open connection values and attempted connection rates. If your network is not "clean", there is no way to properly adjust your firewall's DoS protection.
Step 2. Set the max-incomplete high values to very high values:
ip inspect max-incomplete high 20000000
ip inspect one-minute high 100000000
ip inspect tcp max-incomplete host 100000 block-time 0
This will prevent the router from providing DoS protection while you observe your network's connection patterns. If you wish to leave DoS protection disabled, stop following this procedure now.

Step 3. Clear the Cisco IOS Firewall statistics, using the following command:
show ip inspect statistics reset

Step 4. Leave the router configured in this state for some time, perhaps as long as 24 to 48 hours, so you can observe the network's pattern over a full day's activity cycle.

Note: While the values are adjusted to very high levels, your network will not benefit from Cisco IOS Firewall or IPS DoS protection.


Step 5. After the observation period, check the DoS counters with the following command. The parameters you must observe to tune your DoS protection are highlighted in bold:
router#show ip inspect statistics
Packet inspection statistics [process switch:fast switch]
tcp packets: [528:22519]
udp packets: [318:0]
Interfaces configured for inspection 1
Session creations since subsystem startup or last reset 766
Current session counts (estab/half-open/terminating) [1:0:0]
Maxever session counts (estab/half-open/terminating) [48:12:5]
Last session created 00:12:21
Last statistic reset never
Last session creation rate 0
Last half-open session total 0

Step 6. Configure "ip inspect max-incomplete high" to a value 25-percent higher than your router's indicated maxever session count half-open value. A 1.25 multiplier offers 25-percent headroom above observed behavior.
For example:
Maxever session count (estab/half-open/terminating) [920:460:331]
460 * 1.25 = 575
Thus, configure:
router(config)#ip inspect max-incomplete high 575

Step 7. Configure "ip inspect max-incomplete low" to the value your router displayed for its maxever session count half-open value.
For example:
Maxever session counts (estab/half-open/terminating) [920:460:331]
Thus, configure:
router(config)#ip inspect max-incomplete low 460

Step 8. The counter for "ip inspect one-minute high" and "one-minute low" maintains a sum of all TCP, UDP, and Internet Control Message Protocol (ICMP) connection attempts during the preceding minute of the router's operation, whether the connections have been successful or not. A rising connection rate could be indicative of a worm infection on a private network, or an attempted DoS attack against a server.
Cisco IOS Software does not maintain a value of the maxever one-minute connection rate, so you must calculate the value you will apply based on observed maxever values. While the maximum indicated values for established, half-open, and terminating sessions are unlikely to occur in the same instant, the calculated values used for the one-minute settings have been observed to be reasonably accurate. To calculate the ip inspect one-minute low value, add the indicated "established" value by three.
For example:
Maxever session counts (estab/half-open/terminating) [920:460:331]
920 * 3 = 2760
Thus, configure:
ip inspect one-minute low 2760

Step 9. Calculate and configure "ip inspect one-minute high". The ip inspect one-minute high value should be 25-percent greater than the calculated one-minute low value.
For example:
ip inspect one-minute low (2760) * 1.25 = 3450
Thus, configure:
ip inspect one-minute high 3450

Step 10. You will need to define a value for "ip inspect tcp max-incomplete host" according to your understanding of your servers' capability.
Step 11. Monitor your network's DoS protection activity. Ideally, you should use a syslog server and record occurrences of DoS attack detection. If detection happens very frequently, you may need to monitor and adjust your DoS protection parameters.

источник: http://www.cisco.com/en/US/prod/collateral/vpndevc/ps5708/ps5710/ps1018/prod_white_paper0900aecd804e5098.html

четверг, 16 августа 2012 г.

Резервирование каналов СПД

В качестве примера рассмотрен вариант с одним основным каналом точка-точка L2VPN и резервным каналом через интернет провайдера.

В качестве основного канала выхода в интернет используется канал интернет провайдера.

Роутер Office-MSK анонсирует по EIGRP роутеру Remote-Office суммарные маршруты корпоративной сети и дефолт-роут 0.0.0.0/0

На роутере Remote-Office статикой настроен дефолт-роут 0.0.0.0/0 через шлюз провайдера с метрикой ниже чем дефолт-роут 0.0.0.0/0 от роутера Office-MSK и отслеживание доступности шлюза провайдера.

Логика работы:
трафик в корпоративную сеть идет через EIGRP маршруты полученные от роутера Office-MSK, так как эти маршруты являются more-specific по сравнению с дефолт-роутом до шлюза провайдера.
Трафик в сети для которых нет записей в таблице маршрутизации маршрутизируется через  дефолт-роут 0.0.0.0/0 шлюза провайдера.

В случае отказа в работе основного канала l2vp в таблице маршрутизации роутера Remote-Office удаляются маршруты изученные по EIGRP, таким образом весь трафик маршрутизируется через дефолт-роут 0.0.0.0/0 шлюза провайдера.

В случае отказа в работе интернет канала  в таблице маршрутизации роутера Remote-Office удаляется дефолт-роут 0.0.0.0/0 шлюза провайдера(так как настроено отслеживание доступности шлюза провайдера), после чего в таблицу маршрутизации добавляется дефолт-роут 0.0.0.0/0 от роутера Office-MSK изученный по EIGRP и находящейся в eigrp topology table. Таким образом  трафик для которого отсутствуют маршруты в таблице маршрутизации маршрутизируется через дефолт-роут 0.0.0.0/0 роутера Office-MSK


UPD:
для трекинга роута лучше использовать:


ip sla 1
 icmp-jitter 10.0.0.1 source-ip 10.0.0.2 num-packets 20 interval 200
 timeout 2000
 frequency 30

track 111 rtr 1 state



понедельник, 13 августа 2012 г.

Warm Reload


This is a new feature in 12.3 that enables the router to perform a reboot using the IOS image currently running in DRAM. Having this capability greatly reduces boot time (no decompression or copying from slow flash) and reduces down-time when the router is returned to ROM by a bug. It also enables us to reboot the router even if we don’t have a valid IOS image in flash.
However, for warm-reboot to be active the router has to be cold-rebooted at least once after it’s configured.
With this command “warm-boot”, comes two options. The first is “count” which configures the maximum number of warm-reboots after which the router will perform a cold reboot. The second keyword is “uptime” which configures the time after which warm-reboot will be safe in case of a crash.


R1(config)#warm-reboot count 10


источник http://anetworkerblog.com/2007/11/04/a-warm-reload/

пятница, 10 августа 2012 г.

Troubleshooting Drop

Проверка буферов ASIC:

show platform port-asic stats drop

Проверка TCAM:

show platform tcam utilization

Загрузка шины:

show controllers utilization

show platform hardware capacity