# 🌏 YMMP: Yumetter Messaging Protocol ## Prerequisites - Rust Toolchain 1.53.0+ ## Summary YMMP is a protocol for broadcast a notification to all nodes within the network or subnet, made for Yumetter project. The lower layer protocol is UDP (User Diagram Protocol), and uses port 17339 by default. ## Usage ```rust use std::net::{Ipv4Addr, SocketAddr, SocketAddrV4}; fn main() { let addr = SocketAddrV4::new(Ipv4Addr::LOCALHOST, 17339); let target = SocketAddr::V4(SocketAddrV4::new(Ipv4Addr::BROADCAST, 17339)); let broadcaster = ymmp::Broadcaster::bind(addr, target); let message = vec![b'h', b'e', b'l', b'l', b'o']; let packet = ymmp::Packet::new(message); broadcaster .broadcast(packet) .expect("Failed to broadcast.") ; } ``` ## Diagram
0 1 2 3 4 5 6 7
0 Magic Bytes (YMMP) Version (v0.1)
8 Length of Message (Little Endian)
16 Raw Message (0..N octets)
32