The importance of framing | Networking tutorial (5 of 13)

  Рет қаралды 197,685

Ben Eater

Ben Eater

Күн бұрын

What is framing? Why do we need it? A look at Ethernet and HDLC framing
Support me on Patreon: / beneater
This video is part 5 of an intro to networking tutorial: • Networking tutorial

Пікірлер: 146
@yung9801
@yung9801 5 жыл бұрын
You're the god of low-level stuff when I look for content to study CS. This is really helpful and well laid out. Thank you so much!!
@LoopBooost
@LoopBooost 2 жыл бұрын
What are the topics cs is learning about? I know its some codinh but what is the coding about for example?
@nikaX2000
@nikaX2000 5 ай бұрын
@@LoopBooost cs is more abt programming than coding, which means rather than learning how to write instructions in computer languages, it is more about the algorithm. Like for eg basic stuff like steps to find if number is prime or not, and more complex like finding a name in phonebook containing millions of entry in seconds, then even more complex like that in encoding, decoding, reading/writing data, networking ps: i know its a bit late, but I always wanted some one to reply when I asked technical qs, so.. it is for me
@TomerBenDavid
@TomerBenDavid 6 жыл бұрын
Explained like magic. I think the fact he goes through a more of a let's try this umm we have a problem so let's to this like a historical development of networking with an amazing lecturer and diagram does the trick.
@bennewman4627
@bennewman4627 4 жыл бұрын
I've been in the technology industry for close to 10 years now and I thought I had a basic understanding of "Networking Concepts" until I watched this video course. Turns out I didn't really understand much of anything, so thank you very much Ben! This video course is by far the best basic intro to networking concepts that I've come across in my career!
@ClaysonShawn
@ClaysonShawn 3 жыл бұрын
Ethernet literally has its own little drum roll to announce itself.
@Ma1ne2
@Ma1ne2 2 жыл бұрын
Just today I wrote an exam about network protocols in the car (CAN, MOST, FlexRay, LIN) and what their frames look like. I have to say (for once) the uni guys did a very good job explaining all this, but it was still so refreshing and helpful to see this live view you're presenting from an actual Ethernet connection. That gave me a whole other perspective of what these signals look like.
@w7geek
@w7geek 8 жыл бұрын
You are amazing. You seriously need to upload more videos.
@slosh5411
@slosh5411 9 жыл бұрын
These are the most comprehensible networking video lessons, I'd ever saw. Thank you Ben! You are the great Teacher!
@chitoiup
@chitoiup 9 жыл бұрын
For HDLC bit stuffing, what if I literally want to send 5 ones and a 0, followed by a one?
@rtrusty91
@rtrusty91 8 жыл бұрын
You would still stuff the 0, you'd have 11111001 and it would be read 1111101
@jackhodgson
@jackhodgson 4 жыл бұрын
For anyone who, like me, was confused about this bit-stuffing thing. I dug into it, and the idea seems to be that you add the 0 after EVERY occurrence of 5 1s. Not just in the middle of 6 1s. That way you can find them all and remove the added 0s, leaving the original runs intact. I think I have that right. (With the small exception of this bit-stuffing confusion I found these explanations to be remarkably clear and informative. Just like all the other Ben Eater stuff I've watched. Thanks!)
@abdelrhmanahmed1378
@abdelrhmanahmed1378 3 жыл бұрын
@@jackhodgson nice but what if in the original data we have 11111011 so we already have zero after 5 1s
@cxiliapersono
@cxiliapersono 3 жыл бұрын
@@abdelrhmanahmed1378 111110011
@melodyecho4156
@melodyecho4156 5 ай бұрын
11111001
@slusheewolf2143
@slusheewolf2143 8 жыл бұрын
I want a turkey filled with bit stuffing for this Thanksgiving.
@rahajune
@rahajune 8 жыл бұрын
Brilliant teacher
@pvc988
@pvc988 8 жыл бұрын
What does the sniffer say about this packet size? It' over 9000!!! What? 9000!?
@eb4416
@eb4416 4 жыл бұрын
Go full Mambo Jumboooo!!!
@Fwacer
@Fwacer 6 жыл бұрын
I started watching this series after hearing you talk about it on Ben Ben and Blue. I was very confused with the last video (when do you know where to start reading bytes) and watched it a few times before coming here.. d'oh! Love your stuff, originally found you from your breadboard PC, now just finished Ben Ben and Blue, and now watching this series!
@RequiosWoW
@RequiosWoW 6 жыл бұрын
You know someone is a good teacher when you cant stop watching the next video in the playlist. Thanks for this
@hakanyalcn6826
@hakanyalcn6826 5 жыл бұрын
i'm confusing that do we need to flag pattern(0111110) to delimit the data? but why we directly start DATA after the SFD without check the flag pattern at 5:07?
@HeyUtsav
@HeyUtsav 4 жыл бұрын
The flag pattern (01111110) is only used in HDLC, the one you are asking about at 5:07 is for ethernet which has (10101011) as flag delimiter instead of using (01111110). (As far as I understand)
@arijitbasu4397
@arijitbasu4397 3 жыл бұрын
I have been following you videos for last 3 years. I found very much helpful, the way you describe a topic in dept ,hats off you your effort man. And I consider u as a masterpiece of digital electronics . Everyone should follow your approach. Bcz u explained sr latch theoretically as well as u showed it practically. ❤️❤️❤️❤️ Love from India ❤️
@aaronbraun841
@aaronbraun841 4 жыл бұрын
I doubt this will be answered but... What if the 56 bit preamble is sent, and the clock is not synced and reads a 11 due to the unsynced clock. Won't it begin reading data?
@anandartwork
@anandartwork 5 жыл бұрын
BTW what's that software you use for whiteboard? (Sketchbook? because I don't know how you scroll and keep the brush palette off the screen) On what OS is that? I'm curious as I am trying to make such nice videos too for some students.. Thanks in advance!
@yasmeteora8508
@yasmeteora8508 2 жыл бұрын
Thank you for these great video lesson, could you add the subtitle to this, I'm not English native speaker, so it's a bit hard for me.
@paradoxicallyexcellent5138
@paradoxicallyexcellent5138 5 жыл бұрын
TCP receiver: I don't even see the bits anymore. All I see is blonde... brunette... redhead...
@Olavotemrazaodenovo
@Olavotemrazaodenovo 5 жыл бұрын
I'm brazilian and your videos are amazing. Congratulation.
@cprashanthreddy
@cprashanthreddy 5 жыл бұрын
Beautiful Explanation
@brod515
@brod515 4 жыл бұрын
@4:48 but what if the actual data sent was already 01111101. if the zero after 5 ones is ignored. In this case we actual lose data. How can you determine whether a one was added to avoid six zeroes or if the 0 was actually part of the data. Does it add a zero to every consecutive 5 one bits.
@vicr123
@vicr123 4 жыл бұрын
Taking an educated guess, I think the sender might send 011111001? That way, only one of the zeros are ignored and the rest of the data can be decoded properly.
@brod515
@brod515 4 жыл бұрын
@@vicr123 thanks for the reply. I figured it out but left the comment. It's kinda obvious now that I think about it.
@BleedCubbieBlue
@BleedCubbieBlue 9 жыл бұрын
Thanks for the great explanation Ben.
@directx19
@directx19 5 жыл бұрын
OMG, amazing work. I searched so much for this kind of explanation. Thank you good sir for your amazing videos.
@mattt2684
@mattt2684 6 жыл бұрын
Loving these low-level networking videos!
@samueljimenez4754
@samueljimenez4754 5 жыл бұрын
Thank you for all you do We appreciate it I've watched every single video more than once and can't stop watching them over and over again Make more videos please
@benjaminschmidties9989
@benjaminschmidties9989 5 жыл бұрын
Hello, i just have a simple question about bit stuffing. if there are 5 consecutive 1s then you said you put a 0 in to let the receiver know that this is not the beginning or end of the frame. but if i have to put a 0 in then the data doesnt match up to the data i was acc trying to send?
@teakew8217
@teakew8217 4 жыл бұрын
The idea is that after _any_ five consecutive 1s, there will _always_ be a 0 to signal this is not a flag. The receiver sees that zero and removes it from the data it interprets. So if I want to send: 00101111 / 10110011 / 00101011 I actually send: 00101111 / 100110011 / 00101011 Note that the second byte is now nine bits long. As the receiver reads this, it says "ok, there are five 1s in a row, so now if I see a zero I will ignore it". This means it removes this 0, leaving: 00101111 / 10110011 / 00101011 Which is the data I wanted to send.
@krgrief
@krgrief 2 жыл бұрын
@@teakew8217 awesome, thank u for explaining!! the way ben explained it was a bit confusing lol
@DonPauly
@DonPauly 5 жыл бұрын
One of the best video i have seen related to networking. Your ability to explain concepts in a clear and concise manner is amazing! Thank you Ben! Please upload more videos like this.
@vadrif-draco
@vadrif-draco 4 жыл бұрын
KAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKAKA
@sumedhburbure4173
@sumedhburbure4173 5 жыл бұрын
I LOVE THIS CHANNEL!
@GiveMeAnOKUsername
@GiveMeAnOKUsername 7 жыл бұрын
How does it know that the bit stuffing isn't the literal value of the bits? Or how does it represent the data 011111010?
@alimmi9
@alimmi9 6 жыл бұрын
See the above answer to Roberts question
@kgopps
@kgopps 6 жыл бұрын
Thank you Ben
@dongxie4756
@dongxie4756 7 ай бұрын
Thanks. have one question. What's the HDLC for? for what kind of network? It sounds not like the preamble for the ethernet.
@brusslee1814
@brusslee1814 5 жыл бұрын
OMG THANK U FOR UPLOADING THANK YOU!!!!!!
@_vaibhav
@_vaibhav 2 жыл бұрын
What a beautiful explanation 😍. You are a nice teacher. Not from a technical background, but still could get everything. If you were my physics teacher in school, I would have taken engineering in university bro 😂
@zero_cool02
@zero_cool02 9 ай бұрын
i'm reallllllly impressed by the quality of info you're giving in your videos, may god bless u , thank u so oooooo much
@Nandblow
@Nandblow 9 жыл бұрын
Great !
@power-max
@power-max 2 жыл бұрын
Bit stuffing, JUMBO frames... You got to love the names engineers come up with haha
@keetor13
@keetor13 9 жыл бұрын
best videos I've seen... and I've seen mamy
@j055116
@j055116 5 жыл бұрын
It helps a lot, thank you for sharing!
@enjibkk6850
@enjibkk6850 4 жыл бұрын
"I dont know if you noticed" I have been looking at that for the last 30 seconds not listening to the rest :P
@Djzaamir
@Djzaamir 4 жыл бұрын
These are Simply the best beginner friendly videos on networking on KZbin.
@Digifan001
@Digifan001 Жыл бұрын
I wonder how does a computer recieves information on the internet from multiple servers. Like for example I install a game from steam, while I watch a youtube video and recieve a message from friend on facebook. Eveything happening at the same time. How does the ethernet cable or the fiber optics sends all those bytes knowing where each one byte goes to. Is it the first frame 0111 1110 and then another frame that tells the computer this byte is from steam and then the computer stores it and analyzes the data different by the other 2nd frame 01111110 and frame that tells this byte is from youtube?What I'm trying to say is : Is the cable sending at the same time in parallel or is it sending one bye from yt , then one byte from facebook and then one byte from steam untill the recieving is complete. Also how would the computer's clock syncronize with all that parallel data being sent from different servers? Sorry if my question doesn't make sense.
@miyukohai1470
@miyukohai1470 5 жыл бұрын
Super cool man
@AS-wi6hr
@AS-wi6hr Жыл бұрын
@ben (how do I tag Ben? 🤔 ) ... anyways ... Ben it would be awesome if you could turn the option for subtitles on :/ I guess KZbin will auto-generate one for you ... I use the captions as a note-taking aid (I just take a snapshot of the screen and the text) {instead of typing it separately as a note}
@ashenisuranga2915
@ashenisuranga2915 2 ай бұрын
I dont know what is your magic, but you sound so clear and every information hits deep into the brain. i guess some people are gifter with ability to teach. nice work man ❤👍
@ajreukgjdi94
@ajreukgjdi94 2 жыл бұрын
What happens in Ethernet if somewhere in your data is a long string of an alternating 101010... 0attern ending in ...101011?
@nabeelsherazi8860
@nabeelsherazi8860 Жыл бұрын
I love bit stuffing lol. It immediately seemed analogous to "escape characters" in strings for me.
@Slartipartfast42
@Slartipartfast42 5 жыл бұрын
Holy shit ! thanks for your work ! so awesome !
@abdelrhmanahmed1378
@abdelrhmanahmed1378 3 жыл бұрын
great as always , question tho where is the mac ,ip ,port, parts in the frams ? or the ethernet exclude those part out before sending them to the node
@sadailali
@sadailali 2 жыл бұрын
Because talking about framing only, assume Data portion as addresses etc. Remember each upper layer is considered as data to its lower layer.
@niklashalonen9296
@niklashalonen9296 6 жыл бұрын
The preamble is only 54 bits long...
@abdelrhmanahmed1378
@abdelrhmanahmed1378 3 жыл бұрын
can we just buffer the data to avoid the sync clock issues ?!
@shrikantsen8228
@shrikantsen8228 2 жыл бұрын
I need more videos in this playlist
@pedromateus9575
@pedromateus9575 5 жыл бұрын
if 1 byte corresponds to a letter what if we're sending video or photo??what does the byte mean in the casE?
@bernardoramirez1759
@bernardoramirez1759 2 жыл бұрын
Late and prolly dumb question but why the transitions have to be from positive to negative (and viceversa) voltage? Wouldn’t transitions from 0 (silence) to positive (and viceversa) make more sense?
@markluetzner4604
@markluetzner4604 9 жыл бұрын
Awesome Ben! Thanks
@homemade83
@homemade83 5 жыл бұрын
the only one between those millions who talked about this topic so special thanks ❤❤
@alexd9134
@alexd9134 5 жыл бұрын
This is next level teaching. The niveau absolutely blows my mind.
@willowFFMPEG
@willowFFMPEG 4 жыл бұрын
> niveau It's "level" in English :)
@alexd9134
@alexd9134 4 жыл бұрын
@@willowFFMPEG lol how could that happen?
@willowFFMPEG
@willowFFMPEG 4 жыл бұрын
@@alexd9134 French and English tend to overlap a lot, and so sometimes we forget which words go with which language. It's a little like French is C and English is C++.
@nithyavasudevan272
@nithyavasudevan272 3 жыл бұрын
Dear Sir, I have watched almost every of your videos. I kindly request you to build a series on internet connection on the custom hardware like the 8 bit computer or the 6502 computer. I am currently building a 32 bit computer with vga output and a usb keyboard, mouse input. I am also planing to build an OS for it. From your kind subscriber. Thank you for your kind support.
@baconology3065
@baconology3065 3 жыл бұрын
Do you use a bigger frame when you trust the quality of the hardware on each end? Should you be matching hardware on either side? Do you need external clock synchronization when using larger frames? Short distances, or particular cable type (fibre?). Thank you.
@nabeelsherazi8860
@nabeelsherazi8860 Жыл бұрын
The tradeoff between frame size (packing more data in vs recovering from errors faster) was such a huge lightbulb for me. I realized you were describing MTU and recognized the familiar 1500.
@valjean1016
@valjean1016 2 жыл бұрын
why not bit stuffing cause new problem? Take this for ex, if i want to send a data seqeunce including 111110, then the reciever will ignore the "0" of that sequence, right? And it is not wanted.
@Essutos
@Essutos Жыл бұрын
You can stuff five ones after that '0' so that the program knows to 1) ignore them, 2) that it was bit stuffing '0' not a real '0'
@_hazplants
@_hazplants Жыл бұрын
In some details, this is quite similar to the way our DNA is structured and processed. Great content for free, thank you!
@PankajKumar-zr3tv
@PankajKumar-zr3tv 5 жыл бұрын
best channel....love you man!
@jamienewman1488
@jamienewman1488 3 жыл бұрын
Thanks very educational, what is the 500mv drop though before it picks back up again and then drops to 0?
@garyheard9618
@garyheard9618 4 жыл бұрын
Very nice presentations. I've used an oscilloscope for decades in troubleshooting office systems. Usually I would also display the rise and fall of the clocks as an external trigger to the scope, which would come from the NIC adapter, so I would know exactly when the clock triggers a 1 or a 0.
@samirghedjati4024
@samirghedjati4024 8 жыл бұрын
thank u so much, please more video
@johnbruhling8018
@johnbruhling8018 3 жыл бұрын
Are the byte orders flipped because of how data comes off the stack? (I enjoy your videos 💻)
@BriggamMessinger-h5j
@BriggamMessinger-h5j Жыл бұрын
I've been looking for some great material to get a better understanding of computer network fundamentals and these videos provide just that!
@NonTwinBrothers
@NonTwinBrothers 3 жыл бұрын
"Preamble" haha
@liewts1049
@liewts1049 4 жыл бұрын
The best illustration of an ethernet frame in the physical layer ever come across. Great job man. Could you also make a video on how the NIC logically synchronise itself to the incoming frame?
@SUMIT-sy7qs
@SUMIT-sy7qs 6 жыл бұрын
Hi sir, I have a really tricky question that came up to me: if you take the picture roughly at 4:34, you explained that to avoid confusion with the pattern 01111110 which is not a frame delimiter the system must add a zero before the last 1 as 011111010. OK, I can perfectly understand this rule but my question is how do the system know that the sequence 011111010 is really the adaptation of 01111110 and not an original 011111010 aprt of the bit flow? The only solution I can see is that it should be no posiblility to uncounter the pattarn 011111010 by any combination done by using the ASCII code or whatever code is used to send the data. But wait, if you take the following series 01111101 (which is in ACSII the right closing brace) and then you invert before sending, it becomes 01111101. To this 01111101 series you add another one, for example the 01111000 (which is in ACSII the x) and then you invert before sending, it becomes 000111110. Then if you concatenate both the series, you obtain 0111110101111000 where you can find the 011111010 series which is apparently not the hidden 01111110 series!!!! Do you have a more explaination to better understand this ambiguity? Thank you.
@teakew8217
@teakew8217 4 жыл бұрын
Any time you send five 1s, you insert an extra 0 immediately after them as padding. Any time the receiver reads five 1s, they ignore the 0 which immediately follows as padding.
@SUMIT-sy7qs
@SUMIT-sy7qs 4 жыл бұрын
@@teakew8217 Thank you sir, but I already fully understood this. My question is : if I want to send an original 01111101 which is not at all a hidden 01111110 pattern but really a 01111101, How the sytem can detect that it is not a, hidden 01111110 but an original 01111101? That's my question.
@teakew8217
@teakew8217 4 жыл бұрын
After _any_ five 1s, the transmitting system will insert a padding 0. So any time the receiver receives 111110, it knows that the zero is padding and will discard it. If you ask the system to send the string 1111101, what it will do is send the string 11111001. This can then be interpreted properly by the receiver.
@SUMIT-sy7qs
@SUMIT-sy7qs 4 жыл бұрын
@@teakew8217 Waohh, super thanj you, everything is now understood. Thank you sio much sir:)
@JulianSchimmelpfennig
@JulianSchimmelpfennig 3 жыл бұрын
Ben you are one of the best teachers I've ever seen. Every time I ask myself hm what would happen if this and that changes you'll answer that 10 seconds later!
@joelcordier6762
@joelcordier6762 3 жыл бұрын
💡💡💡 Ben ! Please, Teach, Teach and Teach again. You do that so well. Thank you. ✨✨✨
@liamvg
@liamvg 6 жыл бұрын
How did you know where the signal started for the 8 bit signal value? You started to define this on the 2nd segment on the scope, but there was a segment before that. How do you know it didn't start earlier or later?
@Turjak_art
@Turjak_art 8 жыл бұрын
when is 64 byte frame size, then after recieved this 64 bytes we put another flag? is that correct?
@Sairuscz1
@Sairuscz1 4 жыл бұрын
Best MTU explanation I've seen. Now it clicked! Thanks, Ben.
@Eren-vz5vb
@Eren-vz5vb 3 жыл бұрын
wasn't supposed to be a flag in the last part to start to read the data?
@AriannaEuryaleMusic
@AriannaEuryaleMusic 3 жыл бұрын
Thank you for making this so clear; what I didn´t quite get was: Why the signals are flipped over when making the conversion to decimal?
@RenaudAlly
@RenaudAlly 2 жыл бұрын
Let me take a guess. Imagine a computer sends the bit string to another computer. The receiver will get those bits starting from the end of the bit string (right-most bit) uptil the start (left-most bit).
@coolwinder
@coolwinder 5 жыл бұрын
You are the best. Exactly what I am interested in and that no one is looking at! Perfectly explained without any unnecessary content. Thanks!
@B1NT0N
@B1NT0N 2 жыл бұрын
Does "K" and "A" stand for Khan Academy ?
@haroonsyedmohammed8430
@haroonsyedmohammed8430 5 жыл бұрын
Wish my computer networks lecturer taught this way
@khristianss
@khristianss 4 жыл бұрын
Traduzcan los vídeos por favor
@AhsanKhan-eb2zb
@AhsanKhan-eb2zb 7 жыл бұрын
You're legend
@ezengondolkozom3700
@ezengondolkozom3700 7 жыл бұрын
2:10 Got that joke
@darthglowball
@darthglowball 7 жыл бұрын
I got it a bit. :p
@goeiecool9999
@goeiecool9999 7 жыл бұрын
The ultimate "no pun intended"
@kevinbenavides92
@kevinbenavides92 Жыл бұрын
Thank you so god damn much Ben.
@LWD-Hidden-Links
@LWD-Hidden-Links 5 жыл бұрын
really helped me understand framing thanks
@twerkingduck1275
@twerkingduck1275 5 жыл бұрын
What if my data contained 96 consecutive zeros followed by 1010101010101010101010101010101010101010101010101010101010101011? Does a NIC just know that a frame should always be 1500 bits?
@keiyakins
@keiyakins 4 жыл бұрын
The 0s would be on transitions so there's no interframe gap.
@anandartwork
@anandartwork 5 жыл бұрын
Great explanation and stunning demo as well! Thanks!
@shuvajitmohanty5080
@shuvajitmohanty5080 7 жыл бұрын
plzz give some details about preamble...
@ahmeterdogan7595
@ahmeterdogan7595 3 жыл бұрын
Dude can u add CC all videos?
@magiczerda3120
@magiczerda3120 5 жыл бұрын
I have to write this so there are 69 comments.
@rushikeshpatil003
@rushikeshpatil003 4 жыл бұрын
My new khan academy ✌️
@ammarchangwani9
@ammarchangwani9 3 жыл бұрын
Still watching now ...
@ColdFishMus
@ColdFishMus 5 жыл бұрын
who saw the title and thought its a tutorial for RPG games farming or something?
@-rate6326
@-rate6326 3 жыл бұрын
No one
@ideaparkcc
@ideaparkcc Жыл бұрын
Genius visulization
@train4905
@train4905 3 жыл бұрын
Absolutely brilliant sir thanku
@papo7936
@papo7936 Жыл бұрын
Perfect video.
@nicknesler
@nicknesler 4 жыл бұрын
Are "frame size" and "packet size" synonymous?
@-rate6326
@-rate6326 3 жыл бұрын
No
@LaureanRay
@LaureanRay 5 жыл бұрын
This deserve more views :(
Frame formats | Networking tutorial (6 of 13)
9:05
Ben Eater
Рет қаралды 190 М.
The Joker wanted to stand at the front, but unexpectedly was beaten up by Officer Rabbit
00:12
БЕЛКА СЬЕЛА КОТЕНКА?#cat
00:13
Лайки Like
Рет қаралды 2,8 МЛН
💩Поу и Поулина ☠️МОЧАТ 😖Хмурых Тварей?!
00:34
Ной Анимация
Рет қаралды 2,1 МЛН
Reliable data transmission
43:54
Ben Eater
Рет қаралды 1,6 МЛН
Where Are Laid Off Tech Employees Going? | CNBC Marathon
41:28
How 3 Phase Power works: why 3 phases?
14:41
The Engineering Mindset
Рет қаралды 1,2 МЛН
Understanding I2C
10:58
Rohde Schwarz
Рет қаралды 88 М.
Hardware interrupts
27:36
Ben Eater
Рет қаралды 596 М.
TCP connection walkthrough | Networking tutorial (13 of 13)
9:31
The Data Link Layer, MAC Addressing, and the Ethernet Frame
15:25
danscourses
Рет қаралды 101 М.
CPU vs GPU vs TPU vs DPU vs QPU
8:25
Fireship
Рет қаралды 1,8 МЛН
The Joker wanted to stand at the front, but unexpectedly was beaten up by Officer Rabbit
00:12