Samba, a Besu Portal Client by Derek Sorken | Devcon SEA
Devcon·Tue, Oct 7, 2025, 12:00 AM
Speaker
A presentation about my experience participating in the EPF. Talking primarily about the project I worked on for the cohort and various obstacles that I faced along the way. I additionally aim to go into detail about where I see Samba going in the future and my role in that development. Speaker(s): Derek Sorken Skill level: Intermediate Track: [CLS] EPF Day Keywords: Portal, network Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum, https://warpcast.com/devcon Learn more about devcon: https://www.devcon.org/ Learn more about ethereum: https://ethereum.org/ Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on Swarm, IPFS and more. Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. Devcon SEA was held in Bangkok, Thailand on Nov 12 - Nov 15, 2024. Devcon is organized and presented by the Ethereum Foundation. To find out more, please visit https://ethereum.foundation/
Transcript
[Music] all right yes so I am Derek unfortunately my partner Melton wasn't able to make it um but yeah our our project our joint project is uh bzu portal client Samba so yes so I guess I'll give a a brief introduction to portal um because I think a lot of the reasons that I wanted to work on this project were just because I found uh portal to be such an interesting topic and so there we go so for the purposes of Som up to the scope of EPF um which is uh just for a few uh main roles through the history sub network uh portal Network provides a solution uh to the proposed changes in EIP 44s that allows for the DraStic limiting of Storage storage requirements to run a node um as well it also provides a way to handle the sharing of data in a way that uh not only can handle scaling but actually benefits from scaling and these benefits also directly link to ethereum usability and the uh lowering the barrier of Entry to participation uh in the ethereum ecosystem and then as well outside of the scope of EPF as we continue portal also contains proposed solutions to managing State and Beacon chain related information although this is somewhat more preliminary oh there we go and so now moving into the the role of Samba in Portal um there we go uh so there's kind of two main roles s can play in the in this in this big kind of puzzle and so one of the big roles is of course to fill the Gap in the consensus hyperledger ecosystem in terms of a long-term EIP 44 solution in regard to the existence of s but this also works to increase the portal client diversity um in addition to ease of use in terms of the basic execution clients but I think the other one and potentially more exciting in my eyes is its unique position compared to other portal clients in that um it has a way to easily bring portal functionality to different uh Android to the Android ecosystem with the benefit of the inherent modularity of java but also its native support and so it's a very realistic goal to expect that sble could simply be built on top of as a library for other mobile or resource constrainted applications and so moving into where Samba is at right now um my my initial proposal at the beginning was extremely ambitious and I admit that obviously not quite where we got to but essentially this proposal is a model of where will be at one point and so all Communications in related infrastructure uh including um dis5 portal wire and UTP are eventually going to be implemented uh mainly UTP at this point is the one that we're working on um and then to have a fully functioning history Network as well as full function of State Beacon uh State and Beacon to the point of present portal development as well as full interoperability with other Port portal clients and so uh our updated goal range of course for the the scope of EPF at up to this point just pertains to what we figured would be reasonable in this time scope but essentially that's to get to have had a primary communication infrastructure including a Discovery V5 and then the portal wire um unfortunately UTP was some a big setback in the sense that um there is no generalized UTP library and so unfortunately we're to piggy back off of anything like that and will have to be something that we sit down and do ourselves um and then uh to have infrastructure in place where his history Network function and so then moving on once we have that infrastructure and that we have is to have generalized internal testing uh we wanted to have SSD sterilization distalization exposed API infrastructure metrics and the only thing on the list that we weren't quite able to achieve in this goal range is Portal Hive testing unfortunately just given the scope is we're very close to having had it a lot of it was just have putting little pieces together to to test it but we figured it'd be better uh to just add more functionality before we go and add some just small pieces of testing as opposed to now we can as we go forward add a lot more uh tests and then um prove that we can then interact with other clients and so this is a general diagram of kind of how Samba functions and the the layout of Samba and the big two pieces on the bottom here are the ones that really took the the the brunt of the time is getting all the the uh base protocol um communication systems in place and so that includes like inbound outbound communication um whether that be coming from a client there's a different way to handle requests coming in as opposed to sending out requests or then receiving inbound requests or or responses and vice versa um but then of course there's other uh pieces of puzzle such as the API which Melton had done and exposed an API so we're very well set up to then start actually serving different pieces such as the uh disb 5 and history portal history uh apis um and so moving forward in the uh in the project uh the future of Soma obviously the development of Soma does not stop with EPF uh the project is in a very good place infrastructure wise and has achieved a lot of Milestones um in terms of functionality like at this point currently we are able to send and receive all different types all the available uh portal wire packets uh to all the other portal clients um and in terms of certain packet types such as ping pong obviously work well and then uh we are able to now up to this point uh almost full functionality on just uh sending and receiving nodes in terms of building our um uh our our uh peers and so um moving forward then the continued development will eventually bring us up to dat with the other portal clients and so that that is to me also an exciting uh part of being a part of portal is that um for for the development of Samba we have uh EPF but then also there after moving after EPF there's a portion of getting fully caught up to other portal clients um but then in in terms of I guess my experience it's also very exciting in that once we get to that point it's a entirely different development Paradigm where instead of catching up and following different specs that's now actively participating in development um and so th this development is much more something that I will have to learn as well and that kind of brings me to I would like to talk a bit about my EPF experience because I think that was a really big part of uh this program for me is just a lot of the learning that I've done and so I think for me there there's definitely too many skills to list here um but if I were to sum it up EPF was my introduction to ethereum before EPF I didn't know what ethereum was I didn't even know what blockchain technology was so for me that was a huge just to get into the space and learn everything um and of course that brought a huge confidence boost in terms of development I previously you know I've never worked on such a large scale project before and so those organizational skills are required to create that project was like huge to me and definitely gives me a lot more confidence moving forward and in terms of developing projects and continuing to work on this project um as well I think I acquired a lot of new learning skills I for me it's I think I could best describe it as I learned how to learn um so I guess the biggest example for in my case is going through and learning the consensus Discovery V5 Library I had never had such a a large scale library that I had had to learn in the past and so uh learning this library and then automatically going and going over to the teu library and then learning uh the SS internal infrastructure was a way to then quickly uh apply the skills that I just learned to then learn a new library which was a really great experience um and then as well it gave me a project I really enjoy working on and of course will continue working on um and so yeah uh the SoMo repository can be found uh on melson's G GitHub um I hope that one day we can have a hyperledger or consensus of repository uh for that name um and then of course I'd like to give a big thank you to Melton unfortunately wasn't able to be here but it's been a great a great partner great working with you Melton if you're watching um and then my friend and Mentor Colby uh so unfortunately I can't say that to kby if if you're interested more in Portal um his talk is going on I believe on stage two right now um and then of course EPF organizers Josh and Mario it's been a really great experience I really thank you for this but yeah thank you thank you so much Derek I yeah I really appreciate it really appreciate your words and also your experience with EPF it's amazing to see and uh yeah yeah m going make it I met him uh in Argentina like a week ago and like he's he's also a great person couldn't couldn't come but uh he will be still also contributing to sambba um anyone anyone has a question about portal about uh um the best java implementation yeah yeah just kind of a general question like if uh you're still working on UTP how are you doing the interupt testing to to verify correctness with the other portal clients so for interrup testing there's a lot more than just actual like content sharing testing like for example just the propagation of peers is one thing that we can test and there's like General testing in terms of like just making sure that ping pong find nodes nodes responses are functioning um and then as well exposing apis a lot of the stuff also just includes serving like uh information that comes just from the Discovery V5 library and so that's kind of the part that we are now stepping into is getting all that set up cool thank you so much uh we have a space for another question if there is uh anyone any comments any questions yeah I mean it's it's very important topic right now because uh in probably in like next year the four fors will ship the uh ethereum will drop it it it its history and verle is not coming anytime soon so meanwhile having light clients uh serving the state and serving the history is extremely important and as we have diversity in the L1 clients we need diversity in the portal clients so yeah I really respect the work man and if there are no more yeah yeah there sorry um for serving the data are you get are you getting that from Basu like if you're res sharing this chain State over the network does that come from the basso database or so that will eventally but in terms of History right now uh uh the portal Network itself there is slowly being uh history is being slowly propagated into the network so that it can then be shared around the chain like State and Beacon will eventually come but as as it stands we're just trying to get history up and running and then that's kind of the point where we'll then focus on other things and then as well where we kind of shift into actual participating in the development of portal okay thank you awesome thank you so much Derek yeah uh very well um yeah
Automatic transcript — names and jargon may be misspelled.