Skip to content

Arquivos de entrada de exemplo com explicação

Wellington Rodrigues edited this page May 21, 2022 · 14 revisions

Atualmente Sboard possui duas entradas de arquivos, sendo elas, para criar uma rede e para criar uma requisição.

1. Arquivo para criar um Gráfico

Por padrão Sboard suporta arquivos nos tipos GML e JSON. Podemos encontrar estes arquivos em http://www.topology-zoo.org/dataset.html, sendo o arquivo que usamos para realizar os testes neste tutorial foi o dataset_bt_europe.gml. Ou então criar arquivos em JSON conforme a estrutura de elementos dada no Cytoscape.js, exemplificado abaixo:

 elements: {
   nodes: [
     {
       data: { id: 'a' }
     },

     {
       data: { id: 'b' }
     }
   ],
   edges: [
     {
       data: { id: 'ab', source: 'a', target: 'b' }
     }
   ]
 },
layout: {
   name: 'grid',
   rows: 1
 },

 // so we can see the ids
 style: [
   {
     selector: 'node',
     style: {
       'label': 'data(id)'
     }
   }
 ]

Uma outra forma é gerar um arquivo JSON a partir de um arquivo GML enviado no sistema, para realizar isso primeiro temos que enviar um arquivo valido GML conforme visto na seção 1.1 do nosso Guia de início rápido, feito isto podemos efetuar um click com o botão esquerdo do mouse na região do grafico para abrir o modal Chart Options, (Observação: Este clique não deve ser efetuado em nodes ou edges), aberto o modal basta clicar no botão Export Graph, para assim baixar a versão JSON do nosso gráfico, conforme podemos ver abaixo.

download_graph_json

2 . Arquivo de entrada para Requisições

Sboard aceita apenas um arquivo de entrada, para criar sua requisição (VNR - Virtual Network Requisition), este deve ser um arquivo no formato JSON, contendo no mesmo um array, preenchido com uma lista de objetos referente a cada requisição.

[ { Requisição 1 }, { Requisição 2 }, { Requisição n... } ]

Sendo que para cada requisição, o objeto deve conter os seguintes campos: created, duration, period, bandwidth, delay, reliability, type_slice, vnd e links.

[{ created, duration, period, bandwidth, delay, reliability, type_slice, vnd, links } { Requisição 2 }{...}]

Sendo todos estes campos numericos, com exeção de três campos, sendo eles:

  • type_slice, que deve possuir um caractere que seja "c" | "a" | "t".
  • VND, que se comporta igual ao VNR, porém seus campos são: vnr_id, requested, domain, region, type, period, sink.
  • links, que deve possuir uma lista de arrays, contendo o id do VND de origem e o id do VND de destino.

Conforme exemplo abaixo:

[   
  {
    "created": 1,
    "duration": 2,
    "period": 2,
    "bandwidth": 10,
    "delay": 99,
    "reliability": 50,
    "type_slice": "c",
    "id": 0,
    "vnd": {
      "0": {
        "vnr_id": 0,
        "requested": 1,
        "domain": 1,
        "region": 2,
        "type": "c",	
        "period": 10,
        "sink": 2
      },
      "1": {
        "vnr_id": 1,
        "requested": 2,
        "domain": 2,
        "region": 2,
        "type": "t",
        "period": 10,
        "sink": 2
      }
    },
    "links": [
      [
        0,
        1
      ]
    ]   
  } 
] 

Outra opção é criar um arquivo de requição pelo proprio Sboard, para isto crie um suas requições conforme mostrado em 2.2 do nosso Guia de início rápido, feito isto ir em Others, situado na seção de Requests, depois clicar em "Download Requests", demostrado abaixo.

baixar_requests

Clone this wiki locally