module ietf-mplstpoam { namespace "urn:ietf:params:xml:ns:yang:ietf-mplstpoam"; //namespace need to be assigned by IANA prefix "mplstpoam"; import ietf-inet-types { prefix inet; } organization "IETF MPLS Working Group"; contact "draft-zhang-mpls-tp-yang-oam"; description "MPLS TP OAM YANG Module"; revision "2017-10-29" { description "05 revision"; reference "draft-zhang-mpls-tp-yang-oam"; } typedef enable { type boolean; description "enable"; } typedef me-type { type enumeration { enum "none" { value 0; description "ME type is not assigned."; } enum "section" { value 1; description "ME type is MPLS-TP Sections (between MPLS LSRs)."; } enum "lsp" { value 2; description "ME type is an end-to-end LSP (between LERs)."; } enum "pw" { value 3; description "ME type is an end-to-end Single-Segment Pseudowire (SS-PW) or MS-PW (between T-PEs)."; } enum "lsp-spme" { value 4; description "ME type is an SPME (between a given pair of LERs and/or LSRs along an LSP)."; } enum "pw-spme" { value 5; description "ME type is an SPME (between a given pair of T-PEs and/or S-PEs along an (MS-)PW)."; } } description "ME type"; } typedef cc-session-mode { type enumeration { enum "coordinated" { value 0; description "coordinated"; } enum "independent" { value 1; description "independent"; } } description "CC session mode"; } typedef cc-interval { type uint32{ range "1..65535"; } description "The value rang for cc packet transmit and receive interval."; } typedef cv-interval { type uint32 { range "1..65535"; } description "The value rang for cv packet transmit interval."; } typedef cc-detect-multiplier { type uint8{ range "1..255"; } description "The value rang for cv packet detect multiplier"; } typedef cv-detect-multiplier { type uint8{ range "1..255"; } description "The value rang for cv packet detect multiplier"; } typedef lkr-interval { type enumeration { enum "interval1000ms" { value 0; description "1000ms"; } enum "interval60000ms" { value 1; description "60000ms"; } } description "lkr-interval"; } typedef ais-interval { type enumeration { enum "interval1000ms" { value 0; description "1000ms"; } enum "interval60000ms" { value 1; description "60000ms"; } } description "ais-interval"; } typedef me-direction { type enumeration { enum "ingress" { value 0; description "The direction to the ME is ingress"; } enum "egress" { value 1; description "The direction to the ME is egress"; } enum "dual" { value 2; description "The direction to the ME is dual"; } enum "none" { value 3; description "The direction to the ME is none"; } } description "me-direction"; } typedef me-state { type enumeration { enum "init" { value 0; description "The me state is init"; } enum "down" { value 1; description "The me state is down"; } enum "up" { value 2; description "The me state is up"; } } description "me-state"; } typedef dm-interval { type uint32 { range "1..65535"; } description "The value rang for dm packet transmit interval"; } typedef dm-padding-value { type enumeration { enum "paddingvalue0" { value 0; description "0"; } enum "paddingvalue1" { value 1; description "1"; } } description "dm-padding-value"; } typedef lm-interval { type uint32 { range "1..65535"; } description "The value rang for lm packet transmit interval"; } typedef measure-mode { type enumeration { enum "on-demand" { value 0; description "on-demand"; } enum "proactive" { value 1; description "proactive"; } } description "measure mode"; } typedef vc-type { type uint16 { range "1..65535"; } description "The namespace of the vc type of pw"; } typedef statistics-status { type enumeration { enum "finished" { value 0; description "finished"; } enum "working" { value 1; description "working"; } } description "statistics status"; } typedef error-info { type enumeration { enum "valid" { value 0; description "valid"; } enum "invalid-loss" { value 1; description "invalid-loss"; } enum "invalid-delay" { value 2; description "invalid-delay"; } } description "error-info"; } typedef defect-status-type { type string { length "1..8191"; } description "The namespace of defect status type"; } typedef defect-type { type string { length "1..8191"; } description "The namespace of defect type"; } typedef tunnel-type { type enumeration { enum "ingress" { value 0; description "ingress"; } enum "egress" { value 1; description "egress"; } enum "bidirectional" { value 2; description "bidirectional"; } } description "tunnel type"; } typedef tunnel-direction-type { type enumeration { enum "unidirectional" { value 0; description "unidirectional"; } enum "bidirectional" { value 1; description "bidirectional"; } } description "tunnel direction type"; } typedef active-type { type enumeration { enum "deactive" { value 0; description "deactive"; } enum "active" { value 1; description "active"; } } description "active-type"; } typedef gal-mode { type enumeration { enum "with-13" { value 0; description "Gal mode is with label 13"; } enum "without-13" { value 1; description "Gal mode is without label 13"; } } description "gal mode"; } typedef one-way-rcv-type { type enumeration { enum "on-demand" { value 0; description "The switch of receive eanble takes effect on-demand one-way delay-measure"; } enum "proactive" { value 1; description "The switch of receive eanble takes effect proactive one-way delay-measure"; } } description "one way receive type"; } grouping pw { leaf local-peer-ip { type inet:ip-address; mandatory "true"; description "This object indicates the peer IP address"; } leaf local-vc-id { type uint32 { range "1..4294967295"; } mandatory "true"; description "This object indicates the vc ID of PW type ME"; } leaf local-vc-type { type vc-type; mandatory "true"; description "This object indicates the vc type of VC type ME"; } leaf remote-peer-ip { type inet:ip-address; description "This object indicates the remote peer IP of PW type ME"; } leaf remote-vc-id { type uint32 { range "1..4294967295"; } description "This object indicates the remote vc ID of PW type ME"; } leaf remote-vc-type { type vc-type; description "This object indicates the remote vc type of PW type ME"; } description "pw"; } grouping lsp { leaf tunnel-name { type string { length "0..63"; } mandatory "true"; description "The object indicates the name of tunnel"; } leaf tunnel-id { type uint32 { range "1..65535"; } description "The object indicates the tunnel id"; } leaf ingress-lsr-id { type inet:ip-address; description "The object indicates the ingress LSR-ID"; } description "lsp"; } grouping pw-spme { leaf local-peer-ip { type inet:ip-address; mandatory "true"; description "This object indicates the peer IP address of PW type MIP"; } leaf local-vc-id { type uint32 { range "1..4294967295"; } mandatory "true"; description "This object indicates the vc ID of PW type MIP"; } leaf switch-peer-ip { type inet:ip-address; mandatory "true"; description "This object indicates the peer IP address of PW switch node"; } leaf switch-vc-id { type uint32 { range "1..4294967295"; } mandatory "true"; description "This object indicates the vc id of PW switch node"; } leaf vc-type { type vc-type; mandatory "true"; description "This object indicates the vc type of PW type MIP"; } leaf instance-name { type string { length "1..31"; } mandatory "true"; description "This object specifies the VPWS instance name"; } description "pw spme"; } grouping me-detect-status { leaf me-index { type uint32 { range "1..65535"; } description "The object indicates the index of ME"; } leaf me-direction { type me-direction; description "The object indicates the direction of ME"; } leaf me-state { type me-state; description "The object indicates the state of ME"; } leaf local-state { type me-state; description "The object indicates the local status of ME"; } leaf remote-state { type me-state; description "The object indicates the remote state of ME"; } leaf alarm-indicate { type string { length "1..26"; } description "The object indicates the alarm of ME"; } leaf local-defect-status { type defect-status-type; default "init"; description "This object indicates the local defect status"; } leaf local-invalid-time { type uint32 { range "0..4294967295"; } description "This object indicates the invalid Time of local detect"; } leaf local-defect-location { type string { length "1..32"; } description "This object indicates the local defect location"; } leaf local-defect-type { type defect-type; description "This object indicates the local defect type"; } leaf remote-defect-status { type defect-status-type; default "init"; description "This object indicates the remote defect status"; } leaf remote-invalid-time { type uint32 { range "0..4294967295"; } description "This object indicates the invalid Time of remote detect"; } leaf remote-defect-location { type string { length "1..32"; } description "This object indicates the remote defect location"; } leaf remote-defect-type { type defect-type; description "This object indicates the remote defect type"; } description "This node indicate detect status of ME"; } grouping gal-set { leaf gal-enable { type enable; default "true"; description "This object indicates the gal flag"; } leaf gal-mode { type gal-mode; description "This object indicates the gal flag"; } description "This object indicates the gal set"; } container mplstp-oam { description "Top level container."; leaf ais-enable { type enable; default "false"; description "This object indicates the global ais flag of mpls-tp oam"; } list meg { key "meg-name"; description "meg multi instances."; leaf meg-name { type string { length "1..14"; } mandatory "true"; description "The object indicates the name of MEG"; } leaf me-type { type me-type; default "none"; description "The object indicates the type of ME"; } leaf meg-id { type string { length "1..96"; } description "The object indicates the ID of MEG"; } leaf meg-level { type uint8 { range "0..7"; } default "7"; description "The object indicates the level of MEG"; } leaf oam-active-state { type active-type; default "deactive"; description "This object indicates the oam active state"; } list pw { key "local-peer-ip local-vc-id local-vc-type remote-peer-ip remote-vc-id remote-vc-type"; description "PW"; uses pw; leaf mep-id { type uint16 { range "1..8191"; } description "This object indicates the MEP Id of local ME"; } leaf remote-mep-id { type uint16 { range "1..8191"; } description "This object indicates the MEP Id of remote ME"; } leaf vll-ttl { type uint8 { range "1..255"; } description "This object indicates the VLL ttl of PW type ME"; } uses gal-set; } list lsp { key "tunnel-name tunnel-id ingress-lsr-id"; description "LSP"; uses lsp; leaf mep-id { type uint16 { range "1..8191"; } description "This object indicates the MEP Id of local ME"; } leaf remote-mep-id { type uint16 { range "1..8191"; } description "This object indicates the MEP Id of remote ME"; } leaf reverse-tunnel-name { type string { length "0..63"; } mandatory "true"; description "The object indicates the name of reverse tunnel"; } leaf reverse-tunnel-id { type uint16 { range "1..65535"; } description "The object indicates the ingress reverse tunnelId"; } leaf reverse-ingress-lsr-id { type inet:ip-address; description "The object indicates the ingress reverse LSR-ID"; } leaf tunnel-description { type string { length "1..32"; } description "The object indicates the description of tunnel"; } leaf tunnel-type { type tunnel-type; default "ingress"; description "The object indicates the type of tunnel"; } leaf tunnel-direction { type tunnel-direction-type; description "The object indicates the direction of tunnel"; } } list section { key "section-id"; description "Section"; leaf section-id { type uint64 { range "1..2147483647"; } description "This object indicates the section ID"; } leaf if-name { type string { length "1..63"; } description "The object indicates the interface name"; } leaf peer-ip { type inet:ip-address; mandatory "true"; description "This object indicates the peer IP address"; } leaf peer-lsr-id { type inet:ip-address; description "This object indicates the peer lsr ID"; } leaf mep-id { type uint16 { range "1..8191"; } description "This object indicates the MEP Id of local ME"; } leaf remote-mep-id { type uint16 { range "1..8191"; } description "This object indicates the MEP Id of remote ME"; } } list pw-spme { key "local-peer-ip local-vc-id switch-peer-ip switch-vc-id vc-type instance-name"; description "PW-SPME"; uses pw-spme; } list lsp-spme { key "tunnel-id local-lsr-id remote-lsr-id"; description "LSP-SPME"; leaf tunnel-id { type uint32 { range "1..65535"; } description "The object indicates the tunnel id"; } leaf local-lsr-id { type inet:ip-address; description "The object indicates the ingress LSR-ID"; } leaf remote-lsr-id { type inet:ip-address; description "The object indicates the egress LSR-ID"; } } container cc { description "CC"; leaf cc-session-mode { type cc-session-mode; default "coordinated"; description "This object indicates the session mode of CC"; } leaf cc-authentication-enable { type enable; default "true"; description "CC authentication enable"; } leaf cc-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of CC packet which is sent in the MEG"; } leaf cc-transmit-interval { type cc-interval; default "1"; description "The interval of CC packet which is transmit in the MEG"; } leaf cc-recieve-interval { type cc-interval; default "1"; description "The interval of CC packet which is recieved in the MEG"; } leaf cc-detect-multiplier { type cc-detect-multiplier; default "3"; description "The object indicate the detect multiplier of CC packet"; } leaf cc-enable { type enable; default "true"; description "The object indicates whether CC can be sent by the MEG"; } } container cv { description "CV"; leaf cv-session-mode { type cc-session-mode; default "coordinated"; description "This object indicates the session mode of CC"; } leaf cv-authentication-enable { type enable; default "true"; description "CV authentication enable"; } leaf cv-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of CV packet which is sent in the MEG"; } leaf cv-interval { type cv-interval; default "1"; description "The interval of CV packet which is sent in the MEG"; } leaf cv-detect-multiplier { type cv-detect-multiplier; default "3"; description "The object indicate the detect multiplier of CV packet"; } leaf cv-enable { type enable; default "true"; description "The object indicates whether CC can be received by the MEG"; } } container ais { description "AIS"; leaf ais-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of AIS packet which is sent in the MEG"; } leaf ais-interval { type ais-interval; default "interval1000ms"; description "This object indicates the interval of AIS packet which is sent in the MEG"; } } container lkr { description "LKR"; leaf lkr-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of lock report packet which is sent in the MEG"; } leaf lkr-interval { type lkr-interval; default "interval1000ms"; description "This object indicates the interval of lock report packet which is sent in the MEG"; } leaf lkr-enable { type enable; default "false"; description "The object indicates whether lock report is enabled in the MEG"; } } container one-way-dm-send { description "One way delay measurement send"; leaf one-dm-send-enable { type enable; default "false"; description "This object indicates the 1DM statistics is enabled in the MEG"; } leaf one-dm-interval { type dm-interval; default "1000"; description "This object indicates the interval of 1DM statistics in the MEG"; } leaf one-dm-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of 1DM packet which is sent in the MEG"; } leaf one-dm-packet-size { type uint16 { range "64..1518"; } description "This object indicates the packet size of 1DM packet which is sent in the MEG"; } leaf one-dm-pad-value { type dm-padding-value; default "paddingvalue0"; description "This object indicates the padding value of 1DM packet which is sent in the MEG"; } } container one-way-dm-rcv { description "One way delay measurement received"; leaf onr-dm-rcv-enable { type enable; default "false"; description "This object indicates the 1DM receive is enabled in the MEG"; } leaf one-dm-rcv-enable-type { type one-way-rcv-type; description "This object indicates the 1DM receive type"; } } container two-way-dm-send { description "Two way delay measurement send"; leaf two-dm-send-enable { type enable; default "false"; description "This object indicates the 2DM statistics is enabled in the MEG"; } leaf two-dm-interval { type dm-interval; default "1000"; description "This object indicates the interval of 2DM statistics in the MEG"; } leaf two-dm-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of 2DM packet which is sent in the MEG"; } leaf two-dm-packet-size { type uint16 { range "64..1518"; } description "This object indicates the packet size of 2DM packet which is sent in the MEG"; } leaf two-dm-pad-value { type dm-padding-value; default "paddingvalue0"; description "This object indicates the padding value of 2DM packet which is sent in the MEG"; } leaf two-dm-time-stamp { type enable; default "false"; description "This object indicates whether two-way delay measurement time stamp is enable in the MEG"; } } container two-way-dm-rcv { description "Two way delay measurement recieved"; leaf two-dm-rcv-enable { type enable; default "false"; description "This object indicates the 2DM receiving statistics is enabled in the MEG"; } } container single-lm-send { description "Single loss measurment send"; leaf slm-send-enable { type enable; default "false"; description "This object indicates whether slm send is enable in the MEG"; } leaf slm-interval { type lm-interval; default "1000"; description "This object indicates the interval of slm statistics in the MEG"; } leaf slm-exp { type uint8 { range "0..7"; } default "7"; description "This object indicates the exp of slm packet which is sent in the MEG"; } } container single-lm-rcv { description "Single loss measurment received"; leaf slm-rcv-enable { type enable; default "false"; description "This object indicates whether slm receive is enable in the MEG"; } } container dual-lm { description "Dual loss measurement"; leaf dlm-enable { type enable; default "false"; description "This object indicates the dual loss statistics is enabled in the MEG"; } } container status-info { config "false"; description "Status info"; list pw { uses me-detect-status; description "PW"; } list lsp { uses me-detect-status; leaf me-index-egress { type uint32 { range "1..65535"; } description "The object indicates the egress index of ME"; } leaf me-direct-egress { type me-direction; description "The object indicates the direction of egress ME"; } leaf status-board-egress { type string { length "1..19"; } description "The object indicates the selected status board of ME"; } leaf state-egress { type me-state; description "The object indicates the status of ME"; } leaf alarm-egress { type string { length "1..26"; } description "The object indicates the alarm of ME"; } description "LSP"; } list section { uses me-detect-status; description "Section"; } list pw-spme { leaf me-index { type uint32 { range "1..65535"; } description "The object indicates the index of MIP"; } leaf me-direction { type me-direction; description "The object indicates the direction of MIP"; } leaf me-state { type me-state; description "The object indicates the state of MIP"; } leaf mip-id { type uint16 { range "1..8191"; } description "The object indicates the ID of MIP"; } description "PW-SPME"; } list lsp-spme{ leaf me-index { type uint32 { range "1..65535"; } description "The object indicates the index of te MIP"; } leaf me-direction { type me-direction; description "The object indicates the direction of te MIP"; } leaf me-state { type me-state; description "The object indicates the state of te MIP"; } leaf mip-id { type uint16 { range "1..8191"; } description "The object indicates the ID of te MIP"; } description "LSP-SPME"; } } container detect-result { config "false"; description "Detect result"; container one-way-dm-result { config "false"; description "One way delay measurement result"; leaf send-pkt-num { type uint32 { range "1..4294967295"; } description "Send packet number"; } leaf recv-pkt-num { type uint32 { range "1..4294967295"; } description "Recieved packet number"; } leaf delay-min { type uint32 { range "1..4294967295"; } description "This object indicates the minimum delay of received LB packets in the MEG"; } leaf delay-max { type uint32 { range "1..4294967295"; } description "This object indicates the maximum delay of received LB packets in the MEG"; } leaf delay-avg { type uint32 { range "1..4294967295"; } description "This object indicates the average delay of received LB packets in the MEG"; } leaf jitter-min { type uint32 { range "1..4294967295"; } description "This object indicates the minimum jitter of received LB packets in the MEG"; } leaf jitter-max { type uint32 { range "1..4294967295"; } description "This object indicates the average jitter of received LB packets in the MEG"; } leaf jitter-avg { type uint32 { range "1..4294967295"; } description "This object indicates the average jitter of received LB packets in the MEG"; } container one-way-dm-data { config "false"; description "One way delay measurement data"; list one-way-dm-data { key "index"; leaf index { type uint32 { range "1..4294967295"; } description "This object indicates index of 1DM statistics record in the MEG"; } leaf one-delay { type uint32 { range "1..4294967295"; } description "This object indicates delay of 1DM statistics in the MEG"; } leaf one-delay-var { type uint32 { range "1..4294967295"; } description "This object indicates delay Variation of 1DM statistics in the MEG"; } leaf error-info { type error-info; description "This object indicates the error info of statistics record in the MEG"; } description "One way delay measurement data"; } } } container one-way-send-result { config "false"; description "One way send result"; leaf measure-mode { type measure-mode; default "on-demand"; description "The flag indicates whether the measurement is an on-demand or a continue measurement"; } leaf status { type statistics-status; default "finished"; description "The flag indicates whether the measurement is finished"; } } container two-way-dm-result { config "false"; description "Two way delay measurement result."; leaf measure-mode { type measure-mode; default "on-demand"; description "The flag indicates whether the measurement is an on-demand or a continue measurement"; } leaf status { type statistics-status; default "finished"; description "The flag indicates whether the measurement is finished"; } leaf send-pkt-num { type uint32 { range "1..4294967295"; } description "Send packet number"; } leaf rcv-pkt-num { type uint32 { range "1..4294967295"; } description "Received packet number"; } leaf delay-min { type uint32 { range "1..4294967295"; } description "This object indicates the minimum delay of received LB packets in the MEG"; } leaf delay-max { type uint32 { range "1..4294967295"; } description "This object indicates the maximum delay of received LB packets in the MEG"; } leaf delay-avg { type uint32 { range "1..4294967295"; } description "This object indicates the average delay of received LB packets in the MEG"; } leaf jitter-min { type uint32 { range "1..4294967295"; } description "This object indicates the minimum jitter of received LB packets in the MEG"; } leaf jitter-max { type uint32 { range "1..4294967295"; } description "This object indicates the average jitter of received LB packets in the MEG"; } leaf jitter-avg { type uint32 { range "1..4294967295"; } description "This object indicates the average jitter of received LB packets in the MEG"; } container two-way-dm-data { config "false"; description "Two way delay measurement data"; list two-way-dm-data { key "index"; leaf index { type uint32 { range "1..4294967295"; } description "This object indicates index of 2DM statistics record in the MEG"; } leaf two-delay { type uint32 { range "1..4294967295"; } description "This object indicates delay of 2DM statistics in the MEG"; } leaf two-delay-var { type uint32 { range "1..4294967295"; } description "This object indicates delay Variation of 2DM statistics in the MEG"; } leaf error-info { type error-info; description "This object indicates the error info of statistics record in the MEG"; } description "Two way delay measurement data"; } } } container single-lm-result { config "false"; description "Single loss measurement result."; leaf measure-mode { type measure-mode; default "on-demand"; description "The flag indicates whether the measurement is an on-demand or a continue measurement"; } leaf status { type statistics-status; default "finished"; description "The flag indicates whether the measurement is finished"; } leaf send-pkt-num { type uint32 { range "1..4294967295"; } description "Send packet number"; } leaf rcv-pkt-num { type uint32 { range "1..4294967295"; } description "Received packet number"; } leaf rmt-loss-ratio-min { type uint32 { range "1..4294967295"; } description "This object indicates the minimum loss-ratio of received LB packets in the MEG"; } leaf rmt-loss-ratio-max { type uint32 { range "1..4294967295"; } description "This object indicates the maximum loss-ratio of received LB packets in the MEG"; } leaf rmt-loss-atio-avg { type uint32 { range "1..4294967295"; } description "This object indicates the average loss-ratio of received LB packets in the MEG"; } leaf rmt-loss-count-min { type uint32 { range "1..4294967295"; } description "This object indicates the minimum packet lost of received LB packets in the MEG"; } leaf rmt-loss-count-max { type uint32 { range "1..4294967295"; } description "This object indicates the average packet lost of received LB packets in the MEG"; } leaf rmt-loss-count-avg { type uint32 { range "1..4294967295"; } description "This object indicates the average packet lost of received LB packets in the MEG"; } container single-lm-data { config "false"; description "Single loss measurement data"; list single-lm-data { key "index"; leaf index { type uint32 { range "1..4294967295"; } description "This object indicates index of slm statistics record in the MEG"; } leaf slm-loss-lcl { type uint32 { range "1..4294967295"; } description "This object indicates local packet loss of slm statistics in the MEG"; } leaf slm-loss-lcl-rat { type string { length "1..24"; } description "This object indicates local packet loss rate of slm statistics in the MEG"; } leaf slm-loss-rmt { type uint32 { range "1..4294967295"; } description "This object indicates remote packet loss of slm statistics in the MEG"; } leaf slm-loss-rmt-rat { type string { length "1..24"; } description "This object indicates remote packet loss rate of slm statistics in the MEG"; } leaf error-info { type error-info; description "This object indicates the error info of statistics record in the MEG"; } description "Single loss measurement data"; } } } container dual-lm-data { config "false"; description "Dula loss measurement data"; list dual-lm-data { key "index"; leaf index { type uint32 { range "1..4294967295"; } description "This object indicates index of dlm statistics record in the MEG"; } leaf dlm-Loss-lcl { type uint32 { range "1..4294967295"; } description "This object indicates local packet loss of dlm statistics in the MEG"; } leaf dlm-loss-lcl-rat { type string { length "1..24"; } description "This object indicates local packet loss rate of dlm statistics in the MEG"; } leaf dlm-loss-rmt { type uint32 { range "1..4294967295"; } description "This object indicates remote packet loss of dlm statistics in the MEG"; } leaf dlm-loss-rmt-rat { type string { length "1..24"; } description "This object indicates remote packet loss rate of dlm statistics in the MEG"; } leaf error-info { type error-info; description "This object indicates the error info of statistics record in the MEG"; } description "Dual loss measurement data"; } } } } } }