rust TOKIO async TCP client and UDP logger example -- 2

Completado Publicado hace un año Pagado a la entrega
Completado Pagado a la entrega

Create a single example rust program using the tokio ([login to view URL]) async framework that implements the two following functions to interface to a networked device.

1. Async TCP client that connects to a device on TCP port 9760

a) Create an async reader function that reads messages from the device (not polling)

These messages are variable-length binary messages and must be read as bytes values (Not a text string).

Format in hex (<u8> 0x16, <u8> Length, <u8> 1 .. Length payload )

Messages are variable length unto 257 bytes (2-byte header + 255 bytes data)

Eg 16 04 00 0E 00 00

You need to read the first two bytes (ie 0x16, 0x04) to determine the variable payload length. The variable payload length is in the second byte, in this example case 4 bytes. Then you need to read the variable length payload to consume the entire message based on the length.

Display HEX dump of the bytes read for each full message.

Immediately re-queue async next read for the next message.

b) Create an async periodic timer, that every minute, sends a 2-byte binary message to the device, in hex 0x1600 on TCP port 9760.

2. In the same application create async logger listening on UDP port 30303 to log messages broadcast from the device.

   Read and display messages when received as text string - terminated (0xD, 0xA)  

I can make PCAP files (TCP and UDP) and the device available on the internet to test with for TCP code.

Provide all source and configuration files plus instructions to install on linux.

All code must be async not blocking or polling code.

RUST Programming Local Area Networking

Nº del proyecto: #34409794

Sobre el proyecto

5 propuestas Proyecto remoto Activo hace un año

Adjudicado a:

eurocomputerlan4

Hi, I can help with this Rust code. I'm an IT Engineer with more than 30 years of experience and each Rust task is a challenge for me!

$140 AUD en 7 días
(0 comentarios)
0.0

5 freelancers están ofertando un promedio de $126 por este trabajo

crazygeeks001

Hello Dear Client, after thoroughly reading your PROJECT DESCRIPTION i have clearly understood it and i would like to work with you. I am a skilled and experienced in the named SKILLS. I consider your project DOABLE as Más

$120 AUD en 7 días
(0 comentarios)
0.0
gfabiano96

I work in automotive industry and I have experince on these kind of tasks, I know rust language and network infrastructures. I can do it in some days without problems.

$120 AUD en 4 días
(0 comentarios)
0.0
ExpertNetworkEng

Hello Dear, I am an Expert Network Engineer and I am working as Professor and Expert Consultant Network Engineer in a Multinational ISP. I have great hands-on experience for more than 15 years in various network tech Más

$100 AUD en 1 día
(0 comentarios)
0.0