module ietf-udp-server {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-udp-server";
prefix udps;
import ietf-inet-types {
prefix inet;
reference
"RFC 9911: Common YANG Data Types";
}
organization
"IETF NETCONF (Network Configuration) Working Group";
contact
"WG Web:
WG List:
Authors: Alex Huang Feng
Pierre Francois
";
description
"Defines a generic grouping for UDP-based server applications.
Copyright (c) 2025 IETF Trust and the persons identified as
authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, is permitted pursuant to, and subject to the license
terms contained in, the Revised BSD License set forth in Section
4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info).
All revisions of IETF and IANA published modules can be found
at the YANG Parameters registry group
(https://www.iana.org/assignments/yang-parameters).
This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";
revision 2025-12-16 {
description
"Initial revision";
reference
"RFC XXXX: YANG Groupings for UDP Clients and UDP Servers";
}
grouping udp-server {
description
"Provides a reusable grouping for managing UDP servers.
Note that this grouping uses fairly typical descendant
node names such that a stack of 'uses' statements will
have name conflicts. It is intended that the consuming
data model will resolve the issue (e.g., by wrapping
the 'uses' statement in a container called
'udp-server-parameters'). This model purposely does
not do this itself so as to provide maximum flexibility
to consuming models.";
list local-bind {
key "local-address";
min-elements 1;
description
"A list of bind (listen) points for this server
instance. A server instance may have multiple
bind points to support, e.g., the same port number in
different address families or different port numbers
in the same address family.";
leaf local-address {
type inet:ip-address;
mandatory true;
description
"The local IP address to listen on for incoming
UDP datagrams. INADDR_ANY ('0.0.0.0') or
INADDR6_ANY ('0:0:0:0:0:0:0:0' a.k.a. '::') may be used
so that the server can listen to any IPv4 or IPv6 address.";
}
leaf local-port {
type inet:port-number;
description
"The local port number to listen on for incoming UDP
datagrams.";
}
}
}
}