huawei:olt:firmware

Firmware OLT

Označení verze firmware vypadá například takto: MA5600V800R013C10SPC216. Jednotlivé části popisuje následující tabulka:

MA5600 V800 R013 C10 SPC216
typ hardware:
MA5600 přestavuje celou řadu
Huawei SmartAX MA56[08][036]
označuje „platformu“ firmware
(v rámci jednoho zařízení se nemění)
vydání (Release)
nejdůležitější údaj
změna (Change)
v rámci vydání
(nejdříve C00, později C10)
oprava (Service Patch),
a to aplikovaná při restartu (Cold - SPC),
nebo za běhu (Hot - SPH)

V rámci série OLT (tedy v rámci SmartAX MA5600) hovoříme nejčastěji o verzi jako o „R13“ („vydání“ nebo „generace“ 13) a máme tak na mysli nejnovější dostupnou MA5600V800R013C*SP*.

Konkrétní vydání/změnu (release/change) Huawei ještě postupně aktualizuje pomocí oprav (patchů), ty také čísluje vzestupně (asi od čísla 100). Rozlišení na SPC a SPH pro nás není podstatné: i kompletní balíky Huawei vydává s opravami SPC nebo SPH. Čísla verzí porovnáváme bez ohledu na písmeno C nebo H.

Firmware se dodává v podobě velkého balíku (stovky MB). Ten obsahuje hlavně firmware pro řídicí kartu a k němu i obrazy firmware pro všechny ostatní karty, které se dají v platformě SmartAX používat (nejen karty GPON, ale také mnoho variant xDSL a pod.). Celý balík je tak velký, že se do paměti řídicí karty nevejde, a tak Huawei vymyslel tyto kompromisy:

  1. balík se vystaví celý na (S)FTP serveru (takovém, který podporuje čtení souborů z prostředku, tj. ne pouze od začátku) a OLT si z něj příkazem load packetfile smart … vypreparuje a stáhne jen firmware pro ty karty, které jsou v něm aktuálně používané,
  2. použije se utilita RecombineTool (přesněji Pack.exe, funguje i ve Wine), pomocí které se z původního balíku sestaví menší balík s podporou vybraných karet.

Upgrade (aktualizaci) firmware provedeme takto:

<html> <pre class=„code huacli“> # zadání uživatele FTP (OLT se zeptá na jméno a heslo po potvrzení příkazu) ftp set # stažení balíku firmware z FTP serveru a uložení do FLASH paměti řídicí karty load packetfile ftp 192.0.2.21 firmware.bin # adresa FTP serveru, název souboru na FTP serveru # stažení trvá přes 10 minut, jeho průběh můžeme sledovat pomocí display progress load # po dokončení (OLT oznámí) provedeme restart: # - <b>buď</b> normální (při upgrade na stejnou nebo vyšší verzi) upgrade # - <b>nebo</b> normální, ale odložený (např. na noční hodiny) diagnose upgrade schedule interval 180 # za 3 hodiny # - <b>nebo</b> z textové konfigurace (při downgrade, viz níže) active configuration system </pre> </html>

Downgrade (přechod na starší verzi, například z R015 na R013) nelze provést s normálním restartem, protože starší firmware nerozumí novějšímu formátu binární konfigurace. Nepomůže ani smazání (erase flash data), protože tento příkaz asi vytvoří nějakou „tovární“ binární konfiguraci. Při restartu se na sériové konzoli objeví chybová hláška a OLT naběhne opět do původní (R015) verze (udržuje si dvě varianty firmware a binární konfigurace - A a B - takže se při selhání vrátí do původní). Výše uvedený trik ale pomůže: po stažení balíku firmware se místo normálního restartu provede restart z textové konfigurace (ten navíc zachová většinu původních nastavení).

Po aktualizaci si ověříme, že OLT naběhlo z požadované verze:

<html> <pre class=„code huacli“> display version # na začátku výpisu musí ukázat správnou verzi včetně SPC/SPH display io-packetfile information # obsah firmware, tj. vlastně seznam podporovaných karet # (tento příkaz lze použít ještě před restartem, tj. po `load packetfile`) </pre> </html>

Jak bylo již uvedeno, aktualizací se přepíše pouze jedna ze dvou kopií/oblastí („area A“ nebo „area B“). Po naběhnutí začne běžet tzv. rollback časovač, který je normálně nastaven na 48 hodin. Během tohoto času lze OLT restartovat a vrátit k původní verzi příkazem rollback. Po skončení tohoto času OLT překopíruje firmware i binární konfiguraci i do druhé oblasti.

Časovač lze přenastavit příkazem set norollback time active a set norollback time standby, případně ho úplně ukončit (a vynutit okamžité překopírování firmware a binární konfigurace do neaktivní oblasti) příkazem undo rollback active a undo rollback standby. Aktuální stav lze zobrazit příkazy display {rollback state|norollback time} {active|standby}.

Aktuálně doporučujeme používat nejnovější aktualizaci revize R13, tedy V800R013C10SPC216. Přestože existují mnohem novější revize, funguje nám R13 bez problémů. Máme k ní i aktuální dokumentaci. V testovacím prostředí máme už R18: až ověříme, že umí navíc dynamické směrování (L3) multicastu, a vyřešíme některé nepříjemné změny v konfiguraci (ukládá šifrovaně sériová čísla ONT), tak toto doporučení pravděpodobně aktualizujeme.

Aby se balík firmware vešel do řídicí karty, vytvořil jsem (viz sekci Sestavení balíčku) balík firmware R13 s těmito moduly (sestavení -sel3) takto:

  • vybral jsem volbu Allow to remove any file in the package file,
  • odebral jsem všechny moduly (kliknutím na kořen stromu modulů),
  • přidal jsem na první úrovni stromu všechny řídicí karty:
    • celé SCU a SCUKFPGA pro SCUN,
    • celé MCU pro MCUD,
    • celé SCU pro SCUH
  • dále jsem přidal na první úrovni všechny EMU (asi 12 druhů včetně FAN a SMU), GEPARA, vercfg, UPDATETOOLS a PATCH,
  • pro SCUN a SCUH jsem přidal na první úrovni všechny GIU (takže i GICF a X2CS),
  • z větve GPON pouze: H801GPMD, H80[67]GPBH, H80[567]GPBD, H80[35]GPFD a H801XGBD (přidání jakékoliv další GPON zvětší balíček nad přípustnou mez - GPON soubory jsou největší),
  • z větve ETH pouze H802OPGD.

Balík se vejde do povoleného limitu pro SCUN1), který je cca. 80 MB. Balík pro MCUD by mohl být větší (max. velikost není zdokumentována, ale přijalo to i balík o velikosti cca. 110 MB), přesto jsem ho sestavil se stejnou sadou podporovaných karet GPON, aby se firmware choval stejně.

U této řady aktuálně používáme revizi R17, konkrétně V100R017C10SPH215.

I zde jsem vytvořil zmenšený (viz sekci Sestavení balíčku) balík firmware R17 s těmito moduly (sestavení -sel3) takto:

  • vybral jsem volbu Allow to remove any file in the package file,
  • odebral jsem všechny moduly (kliknutím na kořen stromu modulů),
  • přidal jsem všechny řídicí karty MPL,
  • dále jsem přidal na první úrovni všechny EMU (asi 10 druhů včetně FAN a SMU), 10GEPARA, UPDATETOOLS, vercfg a PATCH,
  • z větve GPON pouze: H901GPHF a H901XGHD.

Zmenšení balíčku už není potřeba kvůli velikosti FLASH (ta je dostatečná i pro kompletní firmware), ale podstatně sníží čas aktualizace: z 80 minut na 20 minut!

Kompletní firmware licencovaný společností Huawei Technologies (Czech) s.r.o., tedy i novejší revize,
lze získat od jejího oficiálního zastoupení.


1)
přesněji: limitující je H801SCUN, novější H802SCUN má dvojnásobnou velikost FLASH
  • huawei/olt/firmware.txt
  • Poslední úprava: 3. 3. 2023, 11:33
  • autor: Milan Krčmář