20TD02Y Spyder - itnett/FTD02H-N GitHub Wiki

20TD02Y Spyder

La oss lage et Python-skript som dekker både CCNA og ITIL 4, med fokus på nettverksadministrasjon og service management praksis. Dette skriptet vil inkludere eksempler på grunnleggende nettverksadministrasjon med Cisco IOS-kommandoer og konsepter fra ITIL 4.

Komplett Skript for CCNA og ITIL 4

1. Nettverksadministrasjon med Cisco IOS (CCNA)

Dette skriptet bruker paramiko for å opprette SSH-tilkoblinger til Cisco-enheter og kjøre konfigurasjonskommandoer.

import paramiko
import logging
import getpass
from tabulate import tabulate

# Konfigurasjon
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

# --- CISCO IOS FUNKSJONER (CCNA) ---
def ssh_connect(hostname, username, password, port=22):
    """Oppretter SSH-tilkobling til en Cisco-enhet."""
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(hostname, port=port, username=username, password=password)
    return client

def run_ios_command(client, command):
    """Kjører en kommando på en Cisco-enhet via SSH og returnerer output."""
    stdin, stdout, stderr = client.exec_command(command)
    output = stdout.read().decode()
    error = stderr.read().decode()
    if error:
        logger.error(f"Feil ved kjøring av kommando: {error}")
        raise Exception(f"Feil ved kjøring av kommando: {error}")
    return output

def configure_interface(client, interface, ip_address, subnet_mask):
    """Konfigurerer en grensesnitt på en Cisco-router eller switch."""
    commands = [
        f"interface {interface}",
        f"ip address {ip_address} {subnet_mask}",
        "no shutdown",
        "exit"
    ]
    for cmd in commands:
        run_ios_command(client, cmd)
    logger.info(f"Grensesnitt {interface} konfigurert med IP {ip_address}/{subnet_mask}")

def configure_vlan(client, vlan_id, vlan_name):
    """Konfigurerer et VLAN på en Cisco-switch."""
    commands = [
        f"vlan {vlan_id}",
        f"name {vlan_name}",
        "exit"
    ]
    for cmd in commands:
        run_ios_command(client, cmd)
    logger.info(f"VLAN {vlan_id} med navn {vlan_name} konfigurert")

# --- ITIL 4 KONSEPTER OG IMPLEMENTASJON ---
def itil_service_value_system():
    """Beskriver ITIL Service Value System."""
    svs = {
        "Guiding Principles": "Recommendations that guide an organization in all circumstances.",
        "Governance": "The means by which an organization is directed and controlled.",
        "Service Value Chain": "An operating model for the creation, delivery, and continual improvement of services.",
        "Continual Improvement": "A recurring organizational activity performed at all levels to ensure that an organization's performance continually meets stakeholders' expectations.",
        "Practices": "Sets of organizational resources designed for performing work or accomplishing an objective."
    }
    print("ITIL Service Value System:")
    print(tabulate(svs.items(), headers=["Component", "Description"]))

def itil_four_dimensions():
    """Beskriver de fire dimensjonene av ITIL 4."""
    dimensions = {
        "Organizations and People": "Ensures that the way an organization is structured and managed as well as its roles, responsibilities, and systems of authority and communication is well-defined and supports its overall strategy and operating model.",
        "Information and Technology": "Includes the information and knowledge necessary for the management of services, as well as the technologies required.",
        "Partners and Suppliers": "Encompasses the relationships an organization has with other organizations that are involved in the design, development, deployment, delivery, support, and/or continual improvement of services.",
        "Value Streams and Processes": "Defines the activities, workflows, controls, and procedures needed to achieve agreed objectives."
    }
    print("The Four Dimensions of ITIL 4:")
    print(tabulate(dimensions.items(), headers=["Dimension", "Description"]))

# --- HOVEDPROGRAM ---
def main():
    logger.info("Starter CCNA og ITIL 4 eksempler...")

    # CCNA Eksempler
    hostname = input("Skriv inn Cisco-enhetens IP-adresse: ")
    username = input("Skriv inn brukernavn: ")
    password = getpass.getpass("Skriv inn passord: ")
    client = ssh_connect(hostname, username, password)

    # Konfigurer grensesnitt
    configure_interface(client, 'GigabitEthernet0/1', '192.168.1.1', '255.255.255.0')

    # Konfigurer VLAN
    configure_vlan(client, vlan_id=10, vlan_name='Management')

    client.close()

    # ITIL 4 Eksempler
    itil_service_value_system()
    itil_four_dimensions()

    logger.info("CCNA og ITIL 4 eksempler fullført.")

if __name__ == "__main__":
    main()

Forklaring og forbedringer

  1. Cisco IOS-funksjoner for CCNA:

    • ssh_connect: Oppretter en SSH-tilkobling til en Cisco-enhet.
    • run_ios_command: Kjører kommandoer på Cisco-enheter via SSH og returnerer output.
    • configure_interface: Konfigurerer et grensesnitt på en Cisco-router eller switch.
    • configure_vlan: Konfigurerer et VLAN på en Cisco-switch.
  2. ITIL 4-konsepter og implementasjon:

    • itil_service_value_system: Beskriver ITIL Service Value System.
    • itil_four_dimensions: Beskriver de fire dimensjonene av ITIL 4.
  3. Hovedprogram:

    • Kjøring av CCNA-eksempler med konfigurasjon av grensesnitt og VLAN.
    • Kjøring av ITIL 4-eksempler med beskrivelser av Service Value System og de fire dimensjonene.

Instruksjoner for kjøring

  1. Installer nødvendige pakker:

    • Sørg for å ha paramiko og tabulate installert:
    pip install paramiko tabulate
    
  2. Kjør skriptet i Spyder eller Trinket:

    • Kopier hele skriptet inn i en ny Python-fil og kjør skriptet.

Dette skriptet gir en omfattende simulering og demonstrasjon av grunnleggende nettverksadministrasjon med Cisco IOS og ITIL 4-konsepter. Det inkluderer praktiske eksempler på konfigurasjon av nettverkskomponenter og implementering av ITIL-praksiser, noe som gjør det egnet for bruk i både skole- og arbeidskontekster.

github.com/ECE458FiveGuys/FiveGuysPowerTesting github.com/TeddySabatier/DevOpsProjectTSE

Absolutt! Her er det komplette Python-skriptet som dekker CCNA og ITIL 4, med fokus på nettverksadministrasjon og service management praksis, sammen med noen forbedringer og forklaringer:

import paramiko
import logging
import getpass
from tabulate import tabulate

# Konfigurasjon
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

# --- CISCO IOS FUNKSJONER (CCNA) ---
def ssh_connect(hostname, username, password, port=22):
    """Oppretter SSH-tilkobling til en Cisco-enhet."""
    try:
        client = paramiko.SSHClient()
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        client.connect(hostname, port=port, username=username, password=password)
        return client
    except Exception as e:
        logger.error(f"Feil ved SSH-tilkobling: {e}")
        return None  # Return None for å indikere mislykket tilkobling

def run_ios_command(client, command):
    """Kjører en kommando på en Cisco-enhet via SSH og returnerer output."""
    try:
        stdin, stdout, stderr = client.exec_command(command)
        output = stdout.read().decode()
        error = stderr.read().decode()
        if error:
            logger.error(f"Feil ved kjøring av kommando: {error}")
        return output
    except Exception as e:
        logger.error(f"Feil ved kjøring av kommando: {e}")
        return None  # Return None for å indikere mislykket kommando

# ... (Resten av funksjonene for konfigurasjon av grensesnitt og VLAN er de samme) ...

# --- ITIL 4 KONSEPTER OG IMPLEMENTASJON ---
# ... (Funksjonene for ITIL Service Value System og Four Dimensions er de samme) ...

# --- HOVEDPROGRAM ---
def main():
    logger.info("Starter CCNA og ITIL 4 eksempler...")

    # CCNA Eksempler
    hostname = input("Skriv inn Cisco-enhetens IP-adresse eller vertsnavn: ")
    username = input("Skriv inn brukernavn: ")
    password = getpass.getpass("Skriv inn passord: ")
    client = ssh_connect(hostname, username, password)

    if client:  # Sjekk om SSH-tilkoblingen var vellykket
        # Konfigurer grensesnitt
        configure_interface(client, 'GigabitEthernet0/1', '192.168.1.1', '255.255.255.0')

        # Konfigurer VLAN
        configure_vlan(client, vlan_id=10, vlan_name='Management')

        client.close()
    else:
        logger.error("Kan ikke fortsette med CCNA-eksempler på grunn av mislykket SSH-tilkobling.")

    # ITIL 4 Eksempler (kjøres uavhengig av SSH-tilkobling)
    itil_service_value_system()
    itil_four_dimensions()

    logger.info("CCNA og ITIL 4 eksempler fullført.")

if __name__ == "__main__":
    main()

Forbedringer:

  • Feilhåndtering: Lagt til try-except-blokker for å håndtere potensielle feil ved SSH-tilkobling og kjøring av kommandoer.
  • Mer robust SSH-tilkobling: Skriptet sjekker nå om SSH-tilkoblingen var vellykket før det prøver å kjøre kommandoer på Cisco-enheten.
  • Fleksibilitet i vertsnavn: Skriptet godtar nå både IP-adresser og vertsnavn for Cisco-enheten.

Instruksjoner for kjøring:

  1. Installer paramiko og tabulate:

    pip install paramiko tabulate
    
  2. Kjør skriptet:

    • Skriv inn IP-adressen eller vertsnavnet til Cisco-enheten din, brukernavn og passord når du blir bedt om det.
    • Skriptet vil prøve å koble til enheten og kjøre konfigurasjonskommandoene hvis tilkoblingen er vellykket.
    • Uansett om SSH-tilkoblingen lykkes eller ikke, vil skriptet presentere informasjon om ITIL 4.

For å sikre at skriptet dekker CCNA og ITIL 4 temaer grundig og med robust feilhåndtering, vil vi inkludere funksjoner som dekker flere aspekter av nettverksadministrasjon med Cisco IOS og de fire dimensjonene i ITIL 4.

Forbedret og Utvidet Skript for CCNA og ITIL 4

import paramiko
import logging
import getpass
from tabulate import tabulate

# Konfigurasjon
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

# --- CISCO IOS FUNKSJONER (CCNA) ---
def ssh_connect(hostname, username, password, port=22):
    """Oppretter SSH-tilkobling til en Cisco-enhet."""
    try:
        client = paramiko.SSHClient()
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        client.connect(hostname, port=port, username=username, password=password)
        logger.info(f"SSH-tilkobling til {hostname} opprettet.")
        return client
    except Exception as e:
        logger.error(f"Feil ved SSH-tilkobling: {e}")
        return None

def run_ios_command(client, command):
    """Kjører en kommando på en Cisco-enhet via SSH og returnerer output."""
    try:
        stdin, stdout, stderr = client.exec_command(command)
        output = stdout.read().decode()
        error = stderr.read().decode()
        if error:
            logger.error(f"Feil ved kjøring av kommando: {error}")
        return output
    except Exception as e:
        logger.error(f"Feil ved kjøring av kommando: {e}")
        return None

def configure_interface(client, interface, ip_address, subnet_mask):
    """Konfigurerer en grensesnitt på en Cisco-router eller switch."""
    commands = [
        f"interface {interface}",
        f"ip address {ip_address} {subnet_mask}",
        "no shutdown",
        "exit"
    ]
    for cmd in commands:
        run_ios_command(client, cmd)
    logger.info(f"Grensesnitt {interface} konfigurert med IP {ip_address}/{subnet_mask}")

def configure_vlan(client, vlan_id, vlan_name):
    """Konfigurerer et VLAN på en Cisco-switch."""
    commands = [
        f"vlan {vlan_id}",
        f"name {vlan_name}",
        "exit"
    ]
    for cmd in commands:
        run_ios_command(client, cmd)
    logger.info(f"VLAN {vlan_id} med navn {vlan_name} konfigurert")

def show_interface_status(client):
    """Viser status for alle grensesnitt på en Cisco-enhet."""
    command = "show ip interface brief"
    output = run_ios_command(client, command)
    if output:
        print("Grensesnittstatus:")
        print(output)

def show_vlan_status(client):
    """Viser status for alle VLAN på en Cisco-switch."""
    command = "show vlan brief"
    output = run_ios_command(client, command)
    if output:
        print("VLAN status:")
        print(output)

# --- ITIL 4 KONSEPTER OG IMPLEMENTASJON ---
def itil_service_value_system():
    """Beskriver ITIL Service Value System."""
    svs = {
        "Guiding Principles": "Recommendations that guide an organization in all circumstances.",
        "Governance": "The means by which an organization is directed and controlled.",
        "Service Value Chain": "An operating model for the creation, delivery, and continual improvement of services.",
        "Continual Improvement": "A recurring organizational activity performed at all levels to ensure that an organization's performance continually meets stakeholders' expectations.",
        "Practices": "Sets of organizational resources designed for performing work or accomplishing an objective."
    }
    print("ITIL Service Value System:")
    print(tabulate(svs.items(), headers=["Component", "Description"]))

def itil_four_dimensions():
    """Beskriver de fire dimensjonene av ITIL 4."""
    dimensions = {
        "Organizations and People": "Ensures that the way an organization is structured and managed as well as its roles, responsibilities, and systems of authority and communication is well-defined and supports its overall strategy and operating model.",
        "Information and Technology": "Includes the information and knowledge necessary for the management of services, as well as the technologies required.",
        "Partners and Suppliers": "Encompasses the relationships an organization has with other organizations that are involved in the design, development, deployment, delivery, support, and/or continual improvement of services.",
        "Value Streams and Processes": "Defines the activities, workflows, controls, and procedures needed to achieve agreed objectives."
    }
    print("The Four Dimensions of ITIL 4:")
    print(tabulate(dimensions.items(), headers=["Dimension", "Description"]))

# --- HOVEDPROGRAM ---
def main():
    logger.info("Starter CCNA og ITIL 4 eksempler...")

    # CCNA Eksempler
    hostname = input("Skriv inn Cisco-enhetens IP-adresse eller vertsnavn: ")
    username = input("Skriv inn brukernavn: ")
    password = getpass.getpass("Skriv inn passord: ")
    client = ssh_connect(hostname, username, password)

    if client:  # Sjekk om SSH-tilkoblingen var vellykket
        # Konfigurer grensesnitt
        configure_interface(client, 'GigabitEthernet0/1', '192.168.1.1', '255.255.255.0')

        # Konfigurer VLAN
        configure_vlan(client, vlan_id=10, vlan_name='Management')

        # Vis status for grensesnitt og VLAN
        show_interface_status(client)
        show_vlan_status(client)

        client.close()
    else:
        logger.error("Kan ikke fortsette med CCNA-eksempler på grunn av mislykket SSH-tilkobling.")

    # ITIL 4 Eksempler (kjøres uavhengig av SSH-tilkobling)
    itil_service_value_system()
    itil_four_dimensions()

    logger.info("CCNA og ITIL 4 eksempler fullført.")

if __name__ == "__main__":
    main()

Forklaring og forbedringer

  1. Cisco IOS-funksjoner for CCNA:

    • ssh_connect: Oppretter en SSH-tilkobling til en Cisco-enhet.
    • run_ios_command: Kjører kommandoer på Cisco-enheter via SSH og returnerer output.
    • configure_interface: Konfigurerer et grensesnitt på en Cisco-router eller switch.
    • configure_vlan: Konfigurerer et VLAN på en Cisco-switch.
    • show_interface_status: Viser status for alle grensesnitt på en Cisco-enhet.
    • show_vlan_status: Viser status for alle VLAN på en Cisco-switch.
  2. ITIL 4-konsepter og implementasjon:

    • itil_service_value_system: Beskriver ITIL Service Value System.
    • itil_four_dimensions: Beskriver de fire dimensjonene av ITIL 4.
  3. Hovedprogram:

    • Kjøring av CCNA-eksempler med konfigurasjon av grensesnitt og VLAN, samt visning av grensesnitt- og VLAN-status.
    • Kjøring av ITIL 4-eksempler med beskrivelser av Service Value System og de fire dimensjonene.

Instruksjoner for kjøring

  1. Installer nødvendige pakker:

    • Sørg for å ha paramiko og tabulate installert:
    pip install paramiko tabulate
    
  2. Kjør skriptet i Spyder eller Trinket:

    • Kopier hele skriptet inn i en ny Python-fil og kjør skriptet.

Dette skriptet gir en omfattende simulering og demonstrasjon av grunnleggende nettverksadministrasjon med Cisco IOS og ITIL 4-konsepter. Det inkluderer praktiske eksempler på konfigurasjon av nettverkskomponenter og implementering av ITIL-praksiser, noe som gjør det egnet for bruk i både skole- og arbeidskontekster.


Kort Beskrivelse av Koden

Dette Python-skriptet kombinerer grunnleggende nettverksadministrasjon ved hjelp av Cisco IOS-kommandoer (CCNA) med ITIL 4-konsepter for service management praksis. Skriptet bruker paramiko for å opprette SSH-tilkoblinger til Cisco-enheter og kjøre konfigurasjonskommandoer. Det inkluderer funksjoner for å konfigurere nettverksgrensesnitt og VLAN, samt vise status for disse. I tillegg beskriver skriptet ITIL Service Value System og de fire dimensjonene av ITIL 4.

Faktisk Kode

import paramiko
import logging
import getpass
from tabulate import tabulate

# Konfigurasjon
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

# --- CISCO IOS FUNKSJONER (CCNA) ---
def ssh_connect(hostname, username, password, port=22):
    """Oppretter SSH-tilkobling til en Cisco-enhet."""
    try:
        client = paramiko.SSHClient()
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        client.connect(hostname, port=port, username=username, password=password)
        logger.info(f"SSH-tilkobling til {hostname} opprettet.")
        return client
    except Exception as e:
        logger.error(f"Feil ved SSH-tilkobling: {e}")
        return None

def run_ios_command(client, command):
    """Kjører en kommando på en Cisco-enhet via SSH og returnerer output."""
    try:
        stdin, stdout, stderr = client.exec_command(command)
        output = stdout.read().decode()
        error = stderr.read().decode()
        if error:
            logger.error(f"Feil ved kjøring av kommando: {error}")
        return output
    except Exception as e:
        logger.error(f"Feil ved kjøring av kommando: {e}")
        return None

def configure_interface(client, interface, ip_address, subnet_mask):
    """Konfigurerer en grensesnitt på en Cisco-router eller switch."""
    commands = [
        f"interface {interface}",
        f"ip address {ip_address} {subnet_mask}",
        "no shutdown",
        "exit"
    ]
    for cmd in commands:
        run_ios_command(client, cmd)
    logger.info(f"Grensesnitt {interface} konfigurert med IP {ip_address}/{subnet_mask}")

def configure_vlan(client, vlan_id, vlan_name):
    """Konfigurerer et VLAN på en Cisco-switch."""
    commands = [
        f"vlan {vlan_id}",
        f"name {vlan_name}",
        "exit"
    ]
    for cmd in commands:
        run_ios_command(client, cmd)
    logger.info(f"VLAN {vlan_id} med navn {vlan_name} konfigurert")

def show_interface_status(client):
    """Viser status for alle grensesnitt på en Cisco-enhet."""
    command = "show ip interface brief"
    output = run_ios_command(client, command)
    if output:
        print("Grensesnittstatus:")
        print(output)

def show_vlan_status(client):
    """Viser status for alle VLAN på en Cisco-switch."""
    command = "show vlan brief"
    output = run_ios_command(client, command)
    if output:
        print("VLAN status:")
        print(output)

# --- ITIL 4 KONSEPTER OG IMPLEMENTASJON ---
def itil_service_value_system():
    """Beskriver ITIL Service Value System."""
    svs = {
        "Guiding Principles": "Recommendations that guide an organization in all circumstances.",
        "Governance": "The means by which an organization is directed and controlled.",
        "Service Value Chain": "An operating model for the creation, delivery, and continual improvement of services.",
        "Continual Improvement": "A recurring organizational activity performed at all levels to ensure that an organization's performance continually meets stakeholders' expectations.",
        "Practices": "Sets of organizational resources designed for performing work or accomplishing an objective."
    }
    print("ITIL Service Value System:")
    print(tabulate(svs.items(), headers=["Component", "Description"]))

def itil_four_dimensions():
    """Beskriver de fire dimensjonene av ITIL 4."""
    dimensions = {
        "Organizations and People": "Ensures that the way an organization is structured and managed as well as its roles, responsibilities, and systems of authority and communication is well-defined and supports its overall strategy and operating model.",
        "Information and Technology": "Includes the information and knowledge necessary for the management of services, as well as the technologies required.",
        "Partners and Suppliers": "Encompasses the relationships an organization has with other organizations that are involved in the design, development, deployment, delivery, support, and/or continual improvement of services.",
        "Value Streams and Processes": "Defines the activities, workflows, controls, and procedures needed to achieve agreed objectives."
    }
    print("The Four Dimensions of ITIL 4:")
    print(tabulate(dimensions.items(), headers=["Dimension", "Description"]))

# --- HOVEDPROGRAM ---
def main():
    logger.info("Starter CCNA og ITIL 4 eksempler...")

    # CCNA Eksempler
    hostname = input("Skriv inn Cisco-enhetens IP-adresse eller vertsnavn: ")
    username = input("Skriv inn brukernavn: ")
    password = getpass.getpass("Skriv inn passord: ")
    client = ssh_connect(hostname, username, password)

    if client:  # Sjekk om SSH-tilkoblingen var vellykket
        # Konfigurer grensesnitt
        configure_interface(client, 'GigabitEthernet0/1', '192.168.1.1', '255.255.255.0')

        # Konfigurer VLAN
        configure_vlan(client, vlan_id=10, vlan_name='Management')

        # Vis status for grensesnitt og VLAN
        show_interface_status(client)
        show_vlan_status(client)

        client.close()
    else:
        logger.error("Kan ikke fortsette med CCNA-eksempler på grunn av mislykket SSH-tilkobling.")

    # ITIL 4 Eksempler (kjøres uavhengig av SSH-tilkobling)
    itil_service_value_system()
    itil_four_dimensions()

    logger.info("CCNA og ITIL 4 eksempler fullført.")

if __name__ == "__main__":
    main()

Strukturen og Flyten

Koden er strukturert i tre hoveddeler: Cisco IOS-funksjoner, ITIL 4-konsepter, og hovedprogrammet.

  1. Cisco IOS-funksjoner (CCNA)

    • ssh_connect: Oppretter en SSH-tilkobling til en Cisco-enhet.
    • run_ios_command: Kjører kommandoer på Cisco-enheter via SSH og returnerer output.
    • configure_interface: Konfigurerer et grensesnitt på en Cisco-router eller switch.
    • configure_vlan: Konfigurerer et VLAN på en Cisco-switch.
    • show_interface_status: Viser status for alle grensesnitt på en Cisco-enhet.
    • show_vlan_status: Viser status for alle VLAN på en Cisco-switch.
  2. ITIL 4-konsepter og implementasjon

    • itil_service_value_system: Beskriver ITIL Service Value System.
    • itil_four_dimensions: Beskriver de fire dimensjonene av ITIL 4.
  3. Hovedprogram

    • Kjøring av CCNA-eksempler med konfigurasjon av grensesnitt og VLAN, samt visning av grensesnitt- og VLAN-status.
    • Kjøring av ITIL 4-eksempler med beskrivelser av Service Value System og de fire dimensjonene.

Be om et Mermaid-diagram

graph TD
    A[Main Program] --> B[CCNA Examples]
    A --> C[ITIL 4 Examples]
    
    B --> D[ssh_connect]
    B --> E[configure_interface]
    B --> F[configure_vlan]
    B --> G[show_interface_status]
    B --> H[show_vlan_status]
    
    C --> I[itil_service_value_system]
    C --> J[itil_four_dimensions]
    
    D --> K{SSH Connection}
    E --> L{Configure Interface}
    F --> M{Configure VLAN}
    G --> N{Show Interface Status}
    H --> O{Show VLAN Status}
    
    I --> P{Service Value System}
    J --> Q{Four Dimensions}

Dette diagrammet viser hovedflyten av programmet, med de ulike funksjonene for CCNA- og ITIL 4-eksemplene.