Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Visão geral dos módulos YANG

Os modelos de dados YANG incluem módulos e submodules e podem definir dados de configuração e estado, notificações e RPCs para uso por clientes baseados em YANG. Um módulo YANG define um modelo de dados por meio de seus dados, e a organização hierárquica de e restrições a esses dados. Cada módulo é identificado exclusivamente por um namespace URI.

Um módulo define um único modelo de dados. No entanto, um módulo pode fazer referência a definições em outros módulos e submodules usando a import declaração para importar módulos externos ou a include declaração para incluir um ou mais submodules. Além disso, um módulo pode aumentar outro modelo de dados usando a augment declaração para definir a colocação dos novos nós na hierarquia do modelo de dados e a when declaração para definir as condições sob as quais os novos nós são válidos. Um módulo usa a feature declaração para especificar partes de um módulo condicionais e a deviation declaração para especificar onde a implementação do dispositivo pode se desviar da definição original.

Quando você importa um módulo externo, você define um prefixo usado ao fazer referência a definições no módulo importado. Recomendamos que você use o mesmo prefixo definido no módulo importado para evitar conflitos.

YANG modela dados usando uma estrutura hierárquica baseada em árvores com nós. YANG define quatro tipos de nós. Cada nó tem um nome e, dependendo do tipo de nó, o nó pode definir um valor ou conter um conjunto de nós infantis. Os tipos de nós são:

  • nó leaf — contém um único valor de um tipo específico

  • nó leaf-list — Contém uma sequência de nós leaf

  • nó de contêiner — contém um agrupamento de nós relacionados contendo apenas nós infantis, que podem ser qualquer um dos quatro tipos de nó

  • nó de lista — contém uma sequência de entradas de lista, cada uma das quais é identificada exclusivamente por uma ou mais folhas-chave

No YANG, cada nó leaf e leaf-list inclui a type declaração para identificar o tipo de dados para dados válidos para esse nó. YANG define um conjunto de tipos integrados e também fornece a typedef declaração para definir um tipo derivado de um tipo base, que pode ser um tipo integrado ou outro tipo derivado.

Por padrão, um nó define dados de configuração. Um nó define dados de estado se forem marcados como config false. Os dados de configuração são devolvidos usando a operação NETCONF <get-config> , e os dados de estado são devolvidos usando a operação NETCONF <get> .

Para obter informações detalhadas sobre a sintaxe e a semântica da língua YANG, veja:

  • RFC 6020, YANG - Uma linguagem de modelagem de dados para o protocolo de configuração de rede (NETCONF)
  • RFC 7950, a linguagem de modelagem de dados YANG 1.1