Introduzione all’uso ditwiki.di.uniroma1.it/pub/Reti_Avanzate/AA0910/WebHome/opnet1.pdf ·...

74
Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 1 Introduzione all’uso di Emiliano Casalicchio [email protected]

Transcript of Introduzione all’uso ditwiki.di.uniroma1.it/pub/Reti_Avanzate/AA0910/WebHome/opnet1.pdf ·...

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 1

Introduzione all’uso di

Emiliano [email protected]

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 2

Agenda• I lezione

– Introduzione ai concetti fondamentali e agli strumenti a disposizione

– Gli elementi principali: Processi, Nodi, Reti

• II lezione (21 Maggio) – Esempi d’uso– Generazione del carico

• III lezione (28 Maggio)– Modellazione di sistemi Wireless

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 3

I parte: introduzione

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 4

Cos’è OpNet

• Ambiente di sviluppo completo per – modellazione di reti di comunicazione e sistemi

distribuiti– studio del comportamento di sistemi– valutazione delle prestazioni di sistemi

• Basato su simulazione ad eventi discretiStrumenti per il supporto di tutte le fasi del

SIMULATION PROJECT CYCLE:1. specifica del modello,2. simulazione e raccolta dei dati,3. analisi dei risultati

Strumenti per il supporto di tutte le fasi del SIMULATION PROJECT CYCLE:1. specifica del modello,2. simulazione e raccolta dei dati,3. analisi dei risultati

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 5

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 6

Orientato agli Oggetti• Fornisce una serie di oggetti (dispositivi di rete

specifici, nodi general purpose, processi, link, protocolli)

• Ogni oggetto è caratterizzato da una serie di attributi (estendibile), ha un suo comportamento e delle sue caratteristiche ed appartiene ad una classe.

• E’ possibile definire nuove classi• E’ possibile derivare nuove classi da classi esistenti

Concetto di oggetto SW è quasi del tutto velato:Ad es. un link di cui specificate la banda, il tasso di errore, etc… senza dover conoscere la struttura dati che lo implementa, etc…

Concetto di oggetto SW è quasi del tutto velato:Ad es. un link di cui specificate la banda, il tasso di errore, etc… senza dover conoscere la struttura dati che lo implementa, etc…

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 7

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 8

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 9

Orientato alle reti di comunicazione e ai sistemi informatici

• Fornisce costrutti che ne facilitano la modellazione• ES:

– op_pk_send() per spedire un pacchetto– op_intrpt_get() per rilevare un interrupt– op_proc_create() per creare un processo– …

• Insomma risulta difficile modellare il flusso di un metanodotto o la stabilità di un pendio!!!!!

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 10

Applicazioni Tipiche (1)• LAN e WAN performance modeling

– Modelli dei principali protocolli– Modelli dei principali componenti di rete

• Internetwork planning– Definizione di topologie gerarchiche– Modelli stocastici o deterministici per la

generazione del carico

• Ricerca e sviluppo di architetture di comunicazione e protocolli– Possibilità di definire la logica comportamentale

mediante ASF e proto-C

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 11

Applicazioni Tipiche (2)• Resourse sizing

– Possibilità di definire accuratamente politiche di gestione delle code e processamento delle richieste

– Easy-to-use commands per la gestione delle code e definizione politiche di servizio

• Sensor e Control networks– Possibilità di modellare applicazioni complesse e

adattative– Possibilità di Customizzare metriche di prestazione

• Mobile networks e Satellite Networks– Supporto per la modellazione del movimento degli utenti– Modelli predefiniti di link radio– Generazione, Piazzamento automatico e visualizzazione

delle orbite

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 12

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 13

Modelli Gerarchici

• Una RETE contine Sotto-RETI

• Una sotto-RETE contiene NODI

• Un NODO contiene Un PROCESSO

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 14

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 15

Flessibilità nella creazione di modelli personalizzati

• Possibile definire modelli personalizzati– Estendendo modelli esistenti– Creandone di nuovi

• Linguaggio di modellazione/programmazione ASF+proto-C

• Funzioni di libreria per la costruzione di modelli: Kernel Procedures

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 16

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 17

Generazione Automatica Simulazioni

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 18

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 19

Statistiche specifiche

• Per ogni oggetto sono definite delle statistiche globali:– Throughput di un link– Pacchetti persi da un intefaccia di rete– Utilizzazione di una CPU

• Possibilità di definire statistiche addizionali– End-to-End responce time– Pagine servite in un secondo– Numero di richieste di pagina scartate– Tasso di blocco di una richiesta di connessione

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 20

Funzionalità e Caratteristiche Principali

• Orientato agli oggetti• Specializzato in reti di comunicazione e sistemi informatici• Modelli gerarchici• Specifiche grafiche• Flessibilità nella creazione di modelli custom• Generazione automatica delle simulazioni• Statistiche specifiche per le applicazioni• Tool analisi post simulazione• Analisi interattiva• Animazione• Cosimulazione• API

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 21

I parte: Specifica dei Modelli

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 22

Concetto di Editor

• Tutte le fasi progetto sono assistite da editor grafici (tranne l’editor testuale!!!)– Project Editor– Node Editor– Process Editor– External System Editor– Link Model Editor– Packet Format Editor– ICI(…) Editor– PDF Editor

Esempio: navighiamo dal progetto alla specifica del processo

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 23

Modeling Domains

Gli ambienti di modellazione fondamentali sono:– Network => Project Editor

• Network topology (sub-net, nodes, link, geo-context)

– Node => Node Editor • Node internal architecture (elementi funzionali e flusso di dati)

– Process => Process Editor• Comportamento di un processo (protocollo, algoritmo,

applicazione) specificato mediante FSM e proto-C

– External System => External System Editor• Interfacce per modelli forniti da altri simulatori

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 24

Esempio Network model

possibilità di composizione sia in contesto geografico che locale.– ATM– WAN

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 25

Esempio Node model

• Tipi di nodi – Processors– Queues– Tranceiver (transmitter and receiver)– Packet Stream– Statistic wire– External system

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 26

Process model

• Possibilità di definire dei processi– Proto-C e ASF (STD - State Transition Diagram) per la

definizione– Kernel Procedures

• Creazione dinamica dei processi (no tread o process ma Procedure Call)

• I processi sono invocati per mezzo di Interrupt• STD: state variables, state executives, transition

conditions, transition executives

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 27

Kernel Procedure PackagesPackage Applications

• Anim Support for custom animation development • Dist Probability distribution and random number generation • Esys Read from and write to external system interfaces • Ev Event list and event property query; event cancellation • Ici Formal interfaces between processes; association of information with interrupts • Id Identification of objects • Ima In-simulation query and modification of object attributes • IntrptQuery of interrupt properties; control of interrupt handling • Pk Creation, destruction, modification, analysis, and transmission of packets • Prg Programming support: linked lists, memory, string manipulation, debugging• Pro Creation, invocation of processes; process group shared memory• Q Queueing statistics; high-level queueing operations• Rte Basic routing support for static routing implementations• Sar Segmentation and reassembly of packets• Sim Simulation control: customized messaging, simulation execution control • Stat Custom statistic generation; intermodule signalling via statistic wires• Strm Communication between modules via packet streams, packet delivery • Subq Low-level queueing operations: enqueueing, dequeueing, statistics, etc.• Tbl Accessing of tabular data: antenna patterns, modulations• Td Setting and getting of transmission data for custom link models• Topo Query of model topology (e.g., for automatic discovery and configuration) • Vvec Create and manipulate value vectors

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 28

Main Kernel Procedure PackagesPackage Applications Dist Generazione di distribuzioni di probabilità e numeri casuali Id Manipolazione e interrogazione degli Identificatori degli oggetti Ima Manipolazione e interrogazione degli attributi degli oggetti Intrpt Controllo e interrogazione degli interrupt Pk Creazione, distruzione, modifica, analisi e trasmissione di pacchettiPro Creazione, invocazione di processi e gestione delle shared memoryRte Supporto per l’implementazione del routing staticoSim Controllo della simulazione: messaggistica, controllo di esecuzioneStat Generazione di statistiche custom; statistic wiresStrm Comunicazione tra moduli mediante packet streams, consegna dei

pacchettiSubq Operazioni di gestione delle code a basso livello: accodamento,

decodamento, statistiche, etc.Topo Interrogazione della topologia del modello (es.: per scoperta

automaticadella configurazione)

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 29

Gli Attributi

• Specificano le caratteristiche di un modello,– Un sottoinsieme degli attributi costituisce

l’interfaccia di un modello • Sono caratterizzati da

– Tipo di dato– Valore di Default– Range– Symbol Map– Comments

• Promozione degli attributi (usare CPU background utilization del router CISCO)

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 30

Packets

• I Pacchetti vengo utilizzati per modellare lo scambio di informazioni tra nodi

• I nodi non possono essere direttamente connessi oppure no

• I pacchetti possono essere scambiati a qualsiasi livello della gerarchia del modello: intra-node e inter-node

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 31

Packets: aree di memorizzazione

3 aree di memorizzazione:– User-defined fields: possibile definire campi

che trasporteranno informazioni utili all’utente (ad esempio header IP o TCP)

– Predefined-Fields: campi predefiniti usati da opnet per tracing e accounting

– Transmission Data Attributes: usati a supporto di modelli custom di canali di comunicazione

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 32

Packets: UD fieldsI campi definiti dall’utente posso contenere

dati di vario tipo:– Integer– Double– Packet, utile per l’incapsulamento dei pacchetti– Structure, per memorizzare strutture dati

complesse (e.g. routing table)– Information, utile per modellare la dimensione

del pacchetto; non contiene alcun valore ma ha solo peso in termini di dimensione del pacchetto

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 33

Packets: Formati• Formatted Packets:

– modello di pacchetto definito mediante Packet Editor– Il modello definisce i campi (con nomi simbolici), la loro

dimensione il loro tipo• Unformatted Packets:

– struttura non definita a priori– I campi possono essere creati a run time– I campi sono identificati da un numero e non da un

nome • Value Vector Packets

– Formato privo di struttura, contiene una sequenza di dati binari

– Utilizzato nella co-simulazione per scambiare dati tra simulztori

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 34

Esempio di packet editor

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 35

II ParteI 3 domini principali

Process, Node, Network

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 36

Processi• Un process model viene definito mediante il

process editor• Un processo è un istanza di un modello di

processo• Un processo viene eseguito in un modulo

– Processor module– Queue module (ha capacità di accodamento)– Easy module (ha capacità di accodamento e

interfacciamento)

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 37

Esecuzione dei Processi

• Interrupt-driven: quando si verifica un evento viene generato un interrupt

• Un interrupt invoca un processo (invoked) che risponderà con un azione

• Un processo alterna fasi di esecuzione e riposo

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 38

Createquando il processoviene creato si pone inuno stato di bloccofinché non viene attivato

Blocking/Activity Cycle

Bloked Active

Interrupt causa un’invocazionedel processo al tempo T

Il processo esegue un azione (in un tempo nullo)

Il processo viene bloccato (al tempo T) e rimane in attesa di un nuovo evento che verrà schedulato al tempo T’ >= T. Il controllo passa al SIMULATION KERNEL

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 39

Processi dinamici• Al momento dell’inizializzazione ogni

nodo ospita un solo processo che viene automaticamente attivato dal Simulation Kernel.

• Ogni processo può create e attivare processi figli mediante op_pro_create() e op_pro_invoke().– Alcune funzionalità del processo richiedono

l’esecuzione di task attivati dinamicamente– Il task è suddiviso in task paralleli

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 40

Processi dinamici (2)

• Ogni processo è descritto da un Prohandle che lo identifica univocamente in tutto il modello

• Ritornato al momento della creazione op_pro_invoke

• Ottenibile mediante chiamate di kernel procedures (op_pro_self, op_pro_parent(), op_pro_child(),

• Il Prohandle server per operazioni come op_pro_invoke() e op_pro_destroy()

• Il processID è un intero che caratterizza univocamente al processo Prohandle!=processID

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 41

Gerarchia dei Processi

• Gli attributi del processo padre appaiono nella lista degli attributi del nodo che lo ospita• Gli attributi di un processo figlio, se promossi sono visti come attributi del padre e quindi possono risalire tutta la gerarchia

• I processi figli di qualsiasi tipo (= o != padre)• dichiarazione modelli dei processi figli• cancellazione padre non implica cancellazione figlio

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 42

Comunicazione tra Processi

• Module Memory: un area condivisa a cui possono accedere tutti i processi della gerarchia

• Parent-to-child shared memory: un are condivisa solo tra padre e figlio

• Argument memory: area di memoria passata dal padre al figlio e su cui agisce il figlio

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 43

Module Memory• Un solo processo installa l’area di memoria condivisa• L’area di memoria è associata al nodo•Tutti i processi appartenenti al nodo possono accedervi

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 44

Parent-to-child shared memory

• Area installata al momento della creazione del processo figlio (NIL se non usata)

• Struttura blocco dichiarato in header file• Rimpiazzamento del blocco non permesso (solo

deallocazione) solo modifica e lettura valori• Un area diversa per ogni figlio (gestione lasciata al

processo padre)

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 45

Argument Access

• Padre passa puntattore area memoria quando invoca un figlio op_pro_invoke()

• Area non persistente, può cambiare ad ogni invocazione

• Struttura area memoria concordata tra padre e figlio

• Il processo invocato legge o modifica area

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 46

Interrupts (1)• Un processo può generare interrupt indirizzati

– a se stesso op_intrpt_schedule_self()– a un preciso processo op_intrpt_schedule_process()

– a un modulo (processor o queue) op_intrpt_schedule_remote()

• Interrupt possono essere generati anche – dall’arrivo di un pacchetto su di uno stream (porta)– dalla generazione di una statistica su di uno statistic wire

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 47

Interrupt (2)

• Un interrupt indirizzato ad un modulo viene consegnato al processo root che lo dovrà gestire in base ai suoi attributi– Tipo,– Porta di provenienza,– Istante di arrivo,– Info di stato.

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 48

Interrupts (3)

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 49

Stream

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 50

Input/Output Local Statistic• Un modulo può

comunicara agli altri moduli valori di determinate statistiche mediante statistic wire

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 51

Global Statistics

• Per collezionare statistiche globali

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 52

Definizione di un Processo

• Mediante ASF descrivo gli stati che attraverserà il processo nel suo ciclo di vita

• Mediante proto-C definisco il comportamento dei processo nei singoli stati

• Mediante proto-C definisco le condizioni di transizione

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 53

Stati di un processo

• Unforced: modella un reale stato di un sistema. È uno stato bloccante

• Forced: è uno stato non bloccante

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 54

Unforced State

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 55

Nodi• Composti da 1 o più moduli che eseguono

processi– Processors– Queue– Transmitter/receiver (point-to-point, bus)– Stream– Statistic wire– Easy

• Rappresentano un elemento/dispositivo della rete di comunicazione

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 56

Moduli

CODA

PROCESSOR

STATISTIC WIRERECEIVER

TRANSMITTER

STREAM

Point-to-point busRadio

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 57

Queue

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 58

Queue attribute

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 59

Transmitter

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 60

Transmitter: attributi

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 61

Receiver

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 62

Stream• Trasporta i pacchetti da un modulo all’altro

– Quite: non viene schedulato nessun streaminterrupt per il nodo di destinazione che deve prelevare direttamente il pacchetto (accodato)

– Scheduled: uno stream interrupt è schedulato per il nodo di destinazione dopo tutti gli eventi con stesso timestemp

– Forced: uno stram interrupt è schedulato immediatamente per il processo destinatario

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 63

Stream

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 64

Network Domain

• Subnetwork• Communication Node• Communication Link

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 65

Subnetwork• Possono essere strutturate

gerarchicamente• Caratterizzate da:

– Posizione geografica – Dimensione– Mobilità (fisse, mobili)

• Le reti fisse sono le uniche che possono utilizzare comunicazioni punto-punto e bus.

• Possono essere anche usate come concetto del tutto astratto dove la posizione geografica è inrilevante.

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 66

Communication Node

Rappresenta un dispositivo di rete (router, switch, hub, server, workstation, stazioni satellitari terrestri…)

• Fisso – Posizione, altitudine– Può usare link punto-punto e bus

• Mobile

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 67

LAN node

• Rappresenta una LAN (Eth, FDDI, Token Ring) ed il suo traffico aggregato

• Può essere connesse ad un qualsiasi nodo (escluso hub), sub-net, LUN con stesso data-rate e protocollo.

• Può essere connesso a nodi con diverso data rate mediante Router o switch

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 68

Communication Link

• Concetto• Concetto di canale• Concetto di point-2-point, bus,

unidirezionale, bidirezionale• Concetto di consistenza• Concetto di failure and recovery

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 69

Communication Link

• Permettono la comunicazione tra 2 nodi per mezzo dello scambio di pacchetti

• Un transmitter immette pacchetti su di un comm.link

• Un receiver riceve pacchetti da un comm.link• E’ composto da un insieme di canali che

trasportano flussi di pacchetti e che sono indipendenti tra di loro.

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 70

Communication Link

• Point to Point• Bus• Unidirezionali• Bidirezionali

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 71

Simplex-Duplex Point to Point link

• Numero di canali statico• Modello predefinito:

– Eth 10/100/1000 base T/X– ATM– FDDI– PPP

• I valori di – Data rate– Transmission delay– Propagation delay– Bit error– Connection error

• Sono insiti nel nel modello

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 72

Bus Link

Permettono di collegare 2 nodi dotati di BUS transmitter and/or receiver.

Un nodo deve essere connesso ad un bus mediante un TAP.

Un TAP può essere unidirezionale o bidirezionale.

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 73

Consistenza dei Link

• Un link trasporta dati solo se è consistente.– End-points devono supportare gli stessi

protocolli, – End-points devono supportare un formato dei

pacchetti comune– End-points devono avere stesso Data Rate,

stesso numero di canali– End-points di un Duplex link devono avere un

transmitter e un receiver

Dott. Emiliano Casalicchio Introduzione a OpNet 14 Maggio 2004 74

Custom link

Vengono Modellati• Tipo di pacchetto (= per ogni canale)• Tipo di connetività (p2p o bus)• Data rate (diverso per ogni canale)• Transmission delay (= per ogni canale)• Propagation delay (= per ogni canale)• Bit error (= per ogni canale):

– Ecc_threshold numero massimo di bit error che il receiver può correggere

– Bit Error Rate (ber) calcolato dal Simulation Kernel– Se ber > ecc_threshold scarto pacchetto

• Connection error (= per ogni canale)