Rodziny systemu Cisco IOS

Cisco Internetwork Operating System, w skrócie nazywany IOS to system operacyjny napędzający większość współczesnych sieci korporacyjnych i dostawców usług internetowych. Zazwyczaj mówiąc o IOS mamy na myśli jeden system. IOS jest tak naprawdę całą rodzina często bardzo wyspecjalizowanych systemów. Przyjrzyjmy się dzisiaj czym charakteryzują się poszczególne wersje oprogramowania Cisco.

Internetwork Operating System

Cisco IOS jest dedykowanym oprogramowaniem dla infrastruktury sieciowej.  System ten pracuje zarówno na routerach i switchach w małych sieciach, jak również w bardzo wydajnych routerach szkieletowych w sieciach operatorskich czy data center.

Pierwsza wersja systemu powstała już w drugiej połowie lat ’80 ubiegłego wieku, gdy sieci komputerowe tak naprawdę raczkowały. IOS został stworzony na podstawie kodu napisanego przez Williama Yeagera na Uniwersytecie Stanforda. Pierwotnie IOS opracowano wyłącznie dla routerów, ponieważ były one główną linią produktów Cisco. Dzięki przejęciu w 1993 roku firmy Crescendo Communications, która koncentrowała się na przełącznikach sieciowych w portfolio Cisco znalazły się również pierwsze switche z serii Catalyst. Początkowo pracowały one pod kontrolą systemu CatOS, ale Cisco zdecydowało się użyć IOS również na swoich przełącznikach.

Podstawowym zadaniem Cisco IOS jest kontrola i zarządzanie hardwarem, na którym działa. System zapewnia więc interfejs między użytkownikiem, a sprzętem, umożliwiając użytkownikowi wykonywanie poleceń w celu skonfigurowania urządzenia i zarządzania nim.

Działanie IOS oparte jest na interfejsie wiersza poleceń, czyli Command Line Interface (w skrócie CLI). Oznacza to, że konfigurowanie urządzeń sieciowych Cisco odbywa się poprzez polecenia tekstowe. Choć dla większości osób CLI przy pierwszym kontakcie może się wydawać skomplikowany i mniej atrakcyjny w obsłudze niż interfejs graficzny GUI, to przy ilości dostępnych poleceń na urządzeniach Cisco, CLI po prostu okazuje się łatwiejszy w obsłudze.

Interfejsy graficzne w wielu urządzeniach Cisco są stosowane i oczywiście mają swoje zalety. Z powodzeniem sprawdzą się w mniejszych środowiskach. Mogą być często rozbudowane o dodatkowe funkcje jak monitorowanie czy wizualizacja ruchu sieciowego. Jeśli jednak dojdzie do awarii lub błędu w konfiguracji sieci, to CLI jest wyborem nr 1 jeśli chodzi o troubleshooting.

System oparty o CLI jest bardzo stabilny i wydajny, dzięki czemu zapewnia również wysoką niezawodność. Takie czynniki są niezbędne dla prawidłowego funkcjonowania dzisiejszych sieci komputerowych.

Od czasu, gdy powstał pierwszy kod IOS minęło kilka dekad. Pierwsze routery Cisco miały tylko 256 KB pamięci i niską moc obliczeniową procesora. Dzisiaj są to super wydajne urządzenia przetwarzające terabity danych na sekundę. By nadążyć za zmieniającymi się wymaganiami i potrzebami związanymi z rozwojem sieci IOS musiał być nie tylko nieustannie aktualizowany, ale również sama architektura systemu musiała ulec zmianie.

Choć zazwyczaj mówi się, że na urządzeniach Cisco znajduje się system IOS to jest to pewne uproszczenie. Ze względu na specyfikę poszczególnych rozwiązań Cisco stosuje różne oprogramowanie w zależności od platformy sprzętowej. Zgodnie z nazewnictwem Cisco wersje oprogramowania IOS są zorganizowane w tzw. „rodziny” (ang. families) i „linie” (ang. trains)1). Każda rodzina korzysta z tej samej bazy kodu. Natomiast linie dostarczają nową wersję systemu.

Do rodzin oprogramowania Cisco zaliczamy:

  • Klasyczny system IOS
  • IOS XE
  • IOS XR
  • NX-OS

1) przyp. red.: postanowiliśmy nie tłumaczyć dosłownie „trains” na „pociągi” bo w naszym odczuciu brzmi to nieco zabawnie. „Linie” oddają dobrze charakter tego terminu i brzmią znacznie bardziej profesjonalnie.

Cykl artykułów o podstawach korzystania z IOS

Artykuły publikowane w ramach cyklu o IOS można czytać niezależnie, ale najlepsze efekty osiągniesz, jeśli zapoznasz się z nimi po kolei. Cały cykl składa się z następujących artykułów:

  1. 1. Rodziny systemu Cisco IOS
  2. 2. Wersjonowanie IOS oraz IOS XE
  3. 3. Podstawy korzystania z IOS
  4. 4. ROMMON – wszystko co musisz wiedzieć
  5. 5. Jak sprawnie poruszać się po IOS
  6. 6. Podstawowa konfiguracja RADIUS w IOS PREMIUM
  7. 7. Konfiguracja banerów w IOS

Klasyczny IOS

IOS powstał jako system „monolityczny”. Co to oznacza? W uproszczeniu można powiedzieć, że system operacyjny i wszystkie uruchomione procesy współdzielą tę samą pamięć i procesor. Korzystanie z jądra monolitycznego ma swoje ograniczenia i wady.

Ponieważ zasoby są współdzielone, awaria pojedynczego procesu może spowodować, że cały system przestanie odpowiadać.

Dodatkowo obraz systemu jest pojedynczym plikiem binarnym, który jest kompatybilny tylko z daną platformą. W przypadku aktualizacji obrazu IOS musisz więc pobrać i zastąpić cały plik binarny. Nie jest również możliwe zastąpienie tylko niektórych funkcji.

Tak było w przypadku wersji IOS do 12.4 włącznie. Od kolejnej wersji zaczęła się spora ewolucja. Na tyle duża, że samo Cisco nadało tej wersji numer 15. Dokładnie tak, numeracja pominęła trzynastkę i czternastkę.

Od wersji 15. IOS nie ma już charakteru monolitycznego, ale modułowy. Oznacza to, że na wszystkich urządzeniach instalowany jest ten sam plik IOS ze wszystkimi dostępnymi funkcjami. Firma Cisco postanowiła również rozpocząć dostarczanie systemu IOS z odpowiednimi mechanizmami licencjonowania. Funkcje są włączane selektywnie na podstawie zakupionej licencji. To znacznie uprościło wdrażanie systemu na wszystkich urządzeniach.

IOS w wersji 15 składa się z wielu różnych wersji (wspomniane wcześniej „linie”), które są specyficzne dla danej platformy sprzętowej. Wśród najważniejszych z nich można wyróżnić:

  • M – Mainline Train – Główna linia ma być najbardziej stabilną wersją, a jego zestaw funkcji nie rozszerza się w trakcie jego cyklu życia. Aktualizacje są wydawane tylko w celu usunięcia błędów w produkcie,
  • T – Technology Train – otrzymuje nowe funkcje i poprawki błędów przez cały okres eksploatacji, przez co jest potencjalnie mniej stabilny niż linia główna. Z tego też powodu nie jest zalecany w środowiskach produkcyjnych,
  • S – Service Provider Train – jest w dużym stopniu dostosowany do potrzeb dostawców usług,
  • E – Enterprise Train – jest dostosowany do wdrożenia w środowiskach korporacyjnych, przeznaczony głównie dla przełączników serii Catalyst.

Kolejna ewolucja – IOS XE

Rodzina IOS XE, czyli Extended Edition (wersja rozszerzona) została wprowadzona w 2004 roku wraz z serią routerów ASR 1000. Wersja systemu dedykowana dla switchy zadebiutowała na przełącznikach Catalyst 3850. XE Wygląda i działa dokładnie tak samo jak IOS. Czym różni się więc od tradycyjnego IOS? IOS XE zamiast używać IOS jako systemu operacyjnego używa systemu operacyjnego Linux. Jest to więc kolejny krok w stosunku do wersji 15, w zakresie modułowej budowy systemu. IOS działa w Linuxie jako oddzielny proces, czyli tzw. demon, stąd też możesz spotkać się z takim stwierdzeniem jak IOSd. Taka struktura systemu znacznie poprawia jakość i wydajność oprogramowania poprzez oddzielenie control plane i data plane.

Dzięki temu, że IOS XE działa po prostu jako usługa na jądrze Linuksa oznacza, że ​​na platformie można również uruchamiać dodatkowe aplikacje. Wszystkie funkcje systemu działają jako osobne procesy w ramach systemu Linux. Oprogramowanie IOS XE nie składa się już wyłącznie z pliku binarnego. Możliwe jest uaktualnienie pojedynczych funkcji zamiast aktualizacji całego systemu.

To sprawia, że rodzina XE jest znacznie lepiej skalowalna. System może również korzystać z przetwarzania wieloprocesowego, co oznacza, że ​​obciążenie procesów może być dzielone na wiele procesorów. Awaria pojedynczego procesu nie powoduje już awarii całego systemu operacyjnego.

Wraz z wersją IOS XE 16.1 Cisco wprowadziło zmiany w nazewnictwie dla swojego systemu operacyjnego. Podobnie jak ma to miejsce w przypadku systemów operacyjnych Apple macOS czy Google Android poszczególne „linie” posiadają swoje nazwy kodowe:

  • Denali – 16.1 – 16.3
  • Everest – 16.4 – 16.6
  • Fuji – 16.7 – 16.9
  • Gibraltar – 16.10 – 16.12
  • Amsterdam – 17.1 – 17.3
  • Bengaluru – 17.4 – 17.6
  • Cupertino – 17.7 – 17.9

Więcej na temat architektury systemu IOS XE przeczytasz w dedykowanym artykule.

IOS XR i NX-OS

Do rodziny systemów Cisco należą jeszcze IOS XR oraz stosowany w przełącznikach Cisco Nexus system NX OS. Przeczytasz o tym w naszym darmowym NSSletterze – mailingu dla sieciowców głodnych wiedzy.

Dołączając uzyskasz dostęp również do archiwum – tematykę tego artykułu rozszerzyliśmy w NSSletterze 30. Rozwiń swoją wiedzę już teraz i zapisz się używając formularza poniżej.

Komentarze: 2
Otrzymuj powiadomienia z tej dyskusji
Powiadom mnie o
guest

2 - Ilość komentarzy
Sortuj wg najlepszych
Sortuj wg najnowszych Sortuj wg najstarszych
Inline Feedbacks
View all comments
Grzesiek
Ranger
Grzesiek
10 miesięcy temu

Warto też wspomnieć co oznaczają literki w IOS Image – https://software.cisco.com/download/static/assets/i18n/reldesignation.html?context=sds
Ale jak zwykle artykuł bardzo rzeczowy , dzięki

Last edited 10 miesięcy temu by Grzegorz Rakuś