Hey
I’m trying to understand ton project code
So I want to know about adnl and rdnl
Documents are not completed I think about low levels
only talked about ideas

Also I think in code adnl using tcp in many sdk (ex goton) and in documents focused on udp

I’m confused because each sdk have different approach
Also codebase in c++ is not very easy to read for me but it’s ok

I want to know adnl is based on tcp or udp?
Is adnl only abstraction and should write other implementations like rdnl? Or adnl is possible be used alone?

Sorry if my question is ridiculous I’m started today about reading code 😅

Dec 14, 2022, 7:58 PM
Actually, that's a very good question. Maybe @xssnik will find a time to answer it?
Dec 14, 2022, 8:02 PM
I’m trying to write lib for ton in rust lang🤔
So I have many other questions but for this step these are the important ones 😅
Dec 14, 2022, 8:05 PM
Have you checked whitepaper? https://ton.org/ton.pdf
Adnl could be over UDP or over TCP
Dec 14, 2022, 8:06 PM
Yes
Because of that I’m confused
In white paper focus is udp for adnl
In official doc udp is TBD and focused on tcp
In existing sdk those libs that writes network layer in native they’re using tcp and using andl

Others are porting clib for andl or tonapi
Dec 14, 2022, 8:09 PM
The best source I know is c++ source code, I guess docs for UDP is not ready yet thats why it’s in TBD status.

Also you can look into Everscale sources in some cases they uses exact same protocols as TON: https://github.com/broxus/everscale-network
Dec 14, 2022, 8:19 PM
Thanks for your recommendation
I will look on this repo too 😊
Dec 14, 2022, 8:21 PM
Hey,
ADNL has 2 types: TCP and UDP, TCP is used only for communication with liteserver (node API), UDP is used on internal level for communication between nodes.

Other protocols like DHT and RLDP are based on ADNL UDP and ADNL can be used alone also.

I have implementation of both ADNLs, RLDP and DHT in tonutils-go, you can check the code here, I think it should be easier to read than c++ 🙂

Also you can read documentation about internals, with examples. It is in russian, but google translate should help 🙂
Dec 15, 2022, 3:49 AM
Thanks man
I will check the doc
But you answered the main question 😁
Dec 15, 2022, 7:07 AM
The doc is awesome
Dec 15, 2022, 7:10 AM
In c++ implementation
ExtClient , ExtServer ,…
Is for litenode?
It’s seems for lite API ton used these

And I have a specific question about Actor module
Do we have documentation about Actor implementation?
Because I’m swimming in code and many things happened by actor so I’m trying to understand actor module 😅
Dec 15, 2022, 1:36 PM
This chat is for engineering question only. Please abstain from asking auction/Fragment related questions.
Dec 15, 2022, 2:31 PM
Ext is about adnl tcp, yes

Not sure about actor docs, but it is like a wrap for entities, which can manage async events and can be destroyed, as i remember
Dec 15, 2022, 4:52 PM

© 2024 Draquery.com All rights reserved.