X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?p=sim%2Fo1-interface.git;a=blobdiff_plain;f=ntsimulator%2Fdeploy%2Fbase%2Fyang%2Fnts-network-function.yang;h=69c39fcbb17fe2bc78d75d2ad65e88a2ef167729;hp=626038d1169192917c469b3e0e32b47519985154;hb=22cd30649dfac2fcfdf233765aa7feeea7141d96;hpb=d070d2aa9ae02f9da264d4ca782335f527429b1c diff --git a/ntsimulator/deploy/base/yang/nts-network-function.yang b/ntsimulator/deploy/base/yang/nts-network-function.yang index 626038d..69c39fc 100644 --- a/ntsimulator/deploy/base/yang/nts-network-function.yang +++ b/ntsimulator/deploy/base/yang/nts-network-function.yang @@ -21,6 +21,12 @@ module nts-network-function { description "This module contains YANG definitions for the Network Topology Simulator - Network Functions"; + revision 2021-05-17 { + description + "Added support for network emulation."; + reference + "O-RAN-SC SIM project"; + } revision 2021-03-26 { description "Added info container, and expanted feature control mechanism and status."; @@ -183,6 +189,139 @@ module nts-network-function { uses ntsc:netconf-config-g; uses ntsc:ves-config-g; } + container network-emulation { + description + "Container which encompasses the details of the network emulation."; + leaf limit { + type uint16 { + range "16 .. max"; + } + units "packets"; + default "1000"; + description + "Maximum number of packets the qdisc may hold queued at a time."; + } + container delay { + description + "Adds the chosen delay to the packets outgoing to chosen network interface."; + leaf time { + type uint16; + units "miliseconds (ms)"; + description + "Delay time between packets."; + } + leaf jitter { + type uint16; + units "miliseconds (ms)"; + description + "Delay jitter."; + } + leaf correlation { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Delay correlation."; + } + leaf distribution { + type enumeration { + enum uniform { + description + "Uniform delay distribution."; + } + enum normal { + description + "Normal delay distribution."; + } + enum pareto { + description + "Pareto delay distribution."; + } + enum paretonormal { + description + "Paretonormal delay distribution."; + } + } + description + "Delay distribution."; + } + } + leaf loss { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Adds an independent loss probability to the packets outgoing from the chosen network interface."; + } + container corruption { + description + "Allows the emulation of random noise introducing an error in a random position for a chosen percent of packets."; + leaf percentage { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Corruption percentage."; + } + leaf correlation { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Corruption correlation."; + } + } + container duplication { + description + "Using this option the chosen percent of packets is duplicated before queuing them."; + leaf percentage { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Duplication percentage."; + } + leaf correlation { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Duplication correlation."; + } + } + container reordering { + description + "Used together with delay; a percentage of packets are sent immediately (with defined correlation) while the others are delayed (by specified delay)."; + leaf percentage { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Reordering percentage."; + } + leaf correlation { + type uint8 { + range "0 .. 100"; + } + units "percentage"; + description + "Reordering correlation."; + } + } + leaf rate { + type uint16; + units "kbits"; + description + "Delay packets based on packet size."; + } + } container sdn-controller { description "Groups details about the SDN Controller.";