How to Design a Network Messaging Protocol!

preview_player
Показать описание
Ever wondered how daemons and programs talk to each other over the network? It's protocols, and today we will make one ourselves instead of use the myriad of perfectly good off-the-shelf solutions.

Chapters:
0:00 - Intro, Motivation and Demo
00:41 - What is an application protocol?
1:37 - High Level Architecture Decisions
1:59 - Synchronous Messaging
5:51 - Asynchronous Messaging
7:37 - Serialization and Serial Communication
9:51 - Handling Packet Length
13:27 - Packet Headers
15:12 - Data Payloads
16:43 - Checksums and CRC
18:44 - The protocol I came up with in 5 minutes
20:03 - Getting the protocol to actually do something
22:13 - Why make your own?? Uhh cause it's cool
23:12 - Summary and Outro
Рекомендации по теме
Комментарии
Автор

Subscribed 4~5 days back, already my fav channel

ayushbatra
Автор

I just wanted to sleep but this popped up in my feed and now I have to watch it

tmanley
Автор

This is interesting as fuck my guy. I've always wanted to create a media server that I could do anything I want with straight from my my chair! Content is liquid gold, my friend.

Nalcot
Автор

What an underrated channel. Great video!

collatedcopies
Автор

Your videos are so much fun and chill to watch. I'm hoping to see more, like the actual implementation of the toe protocol.

Ozla
Автор

I actually have no idea if we still talking about networking or our relationships but it is right on point 7:08

mbakem
Автор

I have no intention to create my own protocol but this video was just too good

pistrie
Автор

What resources did you use to learn about this topic?

flame.
Автор

Okay this is amazing, please dont stop, you are gonna blow up

bob-zbed
Автор

Nice to see some talk about theory, the creative possibilities for optimizing what goes over the wire to be suited for a given task. Next of course comes the actual mechanism. I'm interested to see what you do.

gregoryshields
Автор

This is great man. Do you mind sharing any resources/books you recommend for getting up to speed on your current knowledge?

techwithrod
Автор

and hoff came from the mountain after 40 days and 40 nights, and said "this is toe protocol"

AliMoeeny
Автор

I like your videos dude! keep up the good work.

jean-michelcid
Автор

great video, would love to see an implementation of it

shaqualeOnale
Автор

Thank you for this beautiful reference forever and ever

inn
Автор

This John and Jenny bit was hilarious 😂 4:07

mbakem
Автор

Keep going bro. Your videos are very enjoyable and helpful.

ghostman
Автор

This video can generally be applied to file formats too. It's actually interesting to look at old file formats, like MP3, which implement stuff like padding, start codes, etc. This today is just wasting your memory, storage an bandwidth (memory access with today hardware is more bottleneck than just doing some math on CPU), and they just more complex to work with. Something like QOI just does image compression, only abusing the fact that today we count byte as 8 bits and hardware everything optimized to work with that. And it also has magick number in the begining of the file, version and size, which are basically a header. Everything else is just pure stream of data, no packets, no nothing, because everything else is already doing exactly that for you, or you can make it do stuff just wrapping them one into each other.

rogo
Автор

Pretty sweet video bro, thanks for this.

ChrispyChris
Автор

thanks for these videos, i'm the president of my university's linux club and taking a systems programming class right now. i just wanted to ask: how did you learn C and what should I do to get goated like you

collagen