How TCP Sequence Numbers Work - TCP Deep Dive // Hands-On Case Study

Поделиться
HTML-код
  • Опубликовано: 21 дек 2024

Комментарии • 113

  • @karimhamid7460
    @karimhamid7460 Год назад +7

    The best Wireshark tutorial on the internet, no BS and straight to the point. Thanks Chris!

  • @Zerback
    @Zerback 2 года назад +9

    I can't say thank you enough on how important is for people like me, that is just starting on networking world after working in IT +10 years, seeing you and David doing what you do! Thank you !

    • @ChrisGreer
      @ChrisGreer  2 года назад +1

      Thanks! I appreciate the comment.

  • @felix5729
    @felix5729 2 года назад

    Great explanation. First English speaking RUclipsr I have followed.

  • @dmitrysimbirtsev6685
    @dmitrysimbirtsev6685 3 года назад +9

    Chris keep on going the way you are! Thanks a lot for your great stuff.

  • @fthdex
    @fthdex 2 года назад

    Currently, I am writing some TCP/IP test cases with raw sockets and your analysis help me a lot to figure out the concept. Thanks for the simplified explanations and good quality videos!

    • @ChrisGreer
      @ChrisGreer  2 года назад

      Doing my best to keep the content relevant and interesting. Thank you!

  • @ShadyNetworker
    @ShadyNetworker 3 года назад +2

    Amazing video again, thanks for putting these out!

    • @ChrisGreer
      @ChrisGreer  3 года назад

      Glad you like them!

    • @ShadyNetworker
      @ShadyNetworker 3 года назад

      @@ChrisGreer TCP analysis is deceptively hard, I found. Even something seemingly simple like ACK numbers can throw you for a loop. At least, that the case for me.

  • @teddybean9948
    @teddybean9948 6 месяцев назад

    10 out of 10 rating from me. Best explanation ever.

  • @victormarquim
    @victormarquim 2 года назад +1

    Thank you for this great video! Made it so much easier to understand this topic, which felt really confusing to me at first as newcomer in the field.

  • @mcgirishnetwork
    @mcgirishnetwork 3 года назад +1

    Very useful information for troubleshooting

  • @z0nerider
    @z0nerider 2 года назад +1

    Hay Chris, awesome vids man ! pls keep em comming, dont stop !!!! PCAP of performance / drop issues are a nightmare to troubleshoot but you make it soo easy!!!!

  • @IK-iu4rz
    @IK-iu4rz 3 года назад +1

    Great stuff Chris, Thank you for your time and energy.

  • @batista98854
    @batista98854 3 года назад

    Thanks Chris for all your teachings. Love from India!!

    • @ChrisGreer
      @ChrisGreer  3 года назад +1

      My pleasure! Thanks for the shout out from India.

  • @nidhinyou
    @nidhinyou 9 месяцев назад

    Thanks Chris! enjoying your videos like a beautiful movie..

  • @267praveen
    @267praveen 3 года назад +1

    Thanks Chris.
    I recently came across this series and I am glad for that. Its very helpful to dive into the packet analysis dark world 🌎 !!!

  • @pedrojaviermunozgarcia3721
    @pedrojaviermunozgarcia3721 8 месяцев назад

    Excellent how you break down through thye details!!! Thanks a million man

    • @ChrisGreer
      @ChrisGreer  8 месяцев назад

      Glad it was helpful!

  • @juanrebella2589
    @juanrebella2589 2 года назад

    Thanks man, appreciate your work.
    Greetings from Manchester.

  • @colinrogers9927
    @colinrogers9927 2 года назад

    Great explanation sir

  • @DocFortyThree
    @DocFortyThree 2 года назад

    Thank you, Chris. This was very helpful. Your explanation and walk through made it so much easier.

  • @jjames7206
    @jjames7206 3 года назад

    Thanks Chris!!! I am getting know TCP better!

  • @manigandansrinivasan5194
    @manigandansrinivasan5194 2 года назад

    You are always awesome when explaining difficult topics to make understand easily ... Great mentor ....Keep rocking ...

    • @ChrisGreer
      @ChrisGreer  2 года назад

      Thank you for the comment!

  • @punggukbulan8674
    @punggukbulan8674 2 года назад

    Thanks Chris to spread this important knowledge..

    • @ChrisGreer
      @ChrisGreer  2 года назад

      Thank you for the comment!

  • @AbhishekYadav-kc1df
    @AbhishekYadav-kc1df Год назад

    Awesome explanation !! Thank you so much

  • @majiddehbi9186
    @majiddehbi9186 3 года назад +1

    Hi Chris can as i m preparing my CCNA it s just in time thx

    • @ChrisGreer
      @ChrisGreer  3 года назад +2

      Go get it! You'll pass. Keep up that study and you'll be all good.

  • @ericwf1
    @ericwf1 3 года назад

    This is great information Chris! I've learned so much watching your videos. Thanks very much!

  • @Casperr123
    @Casperr123 2 года назад

    Great teaching skills Chris, really really great

    • @ChrisGreer
      @ChrisGreer  2 года назад

      Thanks Peter! I appreciate the feedback.

  • @asiyaahmad9866
    @asiyaahmad9866 Год назад

    Chris, amazing video. Thanks a lot! The only concern is that the screen is not very clear. Its a blurred view.

  • @TheAychi
    @TheAychi 2 года назад

    Hi Chris thank you for this fantastic analysis again
    I dont know if my understanding is correct but i think that Since the server sends the packets #14-17 out of orders that were acknowledged by packets #18-20
    Maybe The Packet #22 is a response to the packet #9 when the client asked for the gap and since this packet was already sent (the server flaged it with Superious Transmission).

  • @KADAMORIS
    @KADAMORIS 3 года назад

    Thank you for all you videos , value contents in the video.

  • @cyber_student
    @cyber_student 3 года назад

    🔥 🔥 🔥. You are the Truth my guy…

  • @mike_on_tech
    @mike_on_tech 3 года назад

    Incredible teaching. Thanks so much

    • @ChrisGreer
      @ChrisGreer  3 года назад

      Thanks for the comment. Very happy to hear it helped.

  • @padmanathanvelusamy8580
    @padmanathanvelusamy8580 3 года назад

    Thanks for the videos.. Learning a lot with these..

  • @loveplanes
    @loveplanes 9 месяцев назад

    Amazing! Thanks for sharing

  • @arifunal85
    @arifunal85 2 года назад

    Chris thank you for crystal clear informations. I am wondering, if videos have sequence numbers, would it be better?

    • @ChrisGreer
      @ChrisGreer  2 года назад +1

      Good suggestion... I will see if I can sort that out.

  • @pradnyasy8082
    @pradnyasy8082 3 года назад

    I am a student and your videos are very helpful to me :)

  • @yunus-gedik
    @yunus-gedik 2 года назад +1

    In the first packet (the first SYN), there is an TCP options, the MSS with a value of 1460 bytes.
    But each TCP packet has a Window size that is greater than the MSS for example 8192 bytes.
    I'm telling my link partner I can receive 8192 bytes at once but my MSS is smaller.
    Can you explain this point please?

    • @ChrisGreer
      @ChrisGreer  2 года назад +1

      Hello Yunus - that is a great question. So if you tell me your holding tank is 8192, I can't send you 8192 in one packet because our other buddies along the way will get upset (IP MTU and Link level MTU - usually 1500ish). So I have to cut this baby up into smaller chunks (1460) giving room for the TCP and IP headers before we bump our heads on the MTU. So 8192 will turn into five 1460 byte segments, with a last one of 892 (which will probably have the PSH bit set).
      It's almost like - let's go get a pizza Yunus. I can eat four slices (all my stomach can handle - 8192) but please put only one on my plate at a time because the plates are so small! Hope that helps.

  • @ashika2884
    @ashika2884 3 года назад

    Sir! Can I use hamming code in wireshark for detecting errors ?

    • @ChrisGreer
      @ChrisGreer  3 года назад

      I never have. TCP wouldn't but perhaps at the file level?

    • @ashika2884
      @ashika2884 3 года назад

      @@ChrisGreer Good day Sir! Thanks for replying sir, Means a lot! Yes sir at the file level only, like if any bits changes means how to detect that using hamming code sir ? Actually I am doing project in *tracer & packet capturing using wireshark* when I searching for wireshark videos, I saw yours ( which contains what I need), but I didn't find the solution for my project on how to use hamming in wireshark sir! So I thought to ask you sir!

  • @nailsaggitarius4212
    @nailsaggitarius4212 3 года назад +1

    Great video but you better to show the flow of sequences with UML diagram. You can do visually any scenario there, which clears things up.

  • @georgemilev3244
    @georgemilev3244 Год назад

    Awesome stuff!

  • @PouriyaJamshidi
    @PouriyaJamshidi 3 года назад

    This was fantastic!

  • @redrover06able
    @redrover06able 2 года назад

    How likely the packet is not showing up in wireshark due to tcpdump or packet sniffer is not able to capture all the packets. I normally use the ip packet IP to identify gaps in my cpap. Not sure how accurate it is. Any recommendations?

  • @AmanIsMatic
    @AmanIsMatic 3 года назад

    any analysis on sftp..ftp tftp ..etc

  • @SnortDefence
    @SnortDefence 3 года назад

    Good one ..will wait for the video where you show us non relative seq number important and use case

    • @ChrisGreer
      @ChrisGreer  3 года назад +1

      Great suggestion. Short answer? I use non-relative when I'm in a dual side capture analysis scenario and I need to track a packet through a NAT or a Port Translation. Usually those boxes will leave the original raw seq alone.

  • @haasjenl9247
    @haasjenl9247 3 года назад

    So Chris thanks again for the video! Nice stuff! So maybe i didn't catch this while watching but what was the problem in this trace!!?

    • @ChrisGreer
      @ChrisGreer  3 года назад +2

      Thanks for the comment! So the issue was an MTU problem on the return path from the server. It was sending segments that were too large to fit under the MTU ceiling. From the pcaps we can determine that from the behavior, but we can't tell exactly which box was doing it.

  • @LilleFjert
    @LilleFjert 3 года назад

    Beeing 4 byte (32 bit) the max sequence number would be 4,294,967,295. Does it simply wrap around?

    • @ChrisGreer
      @ChrisGreer  3 года назад +1

      Hello Eirik, yes that is correct. Sequence number wrapping is what it is called. This is where the timestamps option can come in. If we are moving a ton of data, TCP can use the timestamp to prevent confusion about "which" sequence number it sees in the case of wrapping - a past one or a current one.

  • @שלמהאלבה-ב9כ
    @שלמהאלבה-ב9כ 3 года назад

    thank you, very high quality material! quick question - at minute 15:17 - how can You be sure that the server got the 4067 ack? You said that "just by looking at the packet flow we can say that it was indeed spurious". but as I see it, theoretically it's possible that the 4067 ack didn't make it to the server, don't You think?

    • @ChrisGreer
      @ChrisGreer  3 года назад +1

      It's most likely that the spurious retransmission was a result of the triple-double. There were three duplicate ACKS above it. The acks between, the ones you had mentioned, are fired off, and before the network roundtrip time (85mSec) we get the retransmitted data. Also, all symptoms indicate that there was packet loss of large MSS's in the direction from server back to client - not small packets (ACKS) from client to server. So it is pretty safe to assume that the server got those ACKs and was just reacting to the Triple double. This is another reason I really try to get trace files from both sides of the conversation so we can absolutely prove questions like you had. Thanks for the comment and hope that helps!

    • @שלמהאלבה-ב9כ
      @שלמהאלבה-ב9כ 3 года назад

      @@ChrisGreer that's very helpful, thanks so much!

  • @malkeetkalera7520
    @malkeetkalera7520 3 года назад

    Thanx for uploading 🙏

  • @walternakatana7603
    @walternakatana7603 3 года назад

    Dear Chris, thank you for your wonderful videos. Just one question, what are some protocols/captures to look for when computers are freezing/hanging when connected to the LAN on the same switch, only one switch in the building with 20+ users.

    • @ChrisGreer
      @ChrisGreer  3 года назад +1

      Hmmm.... great question. I would look for connectivity kind of problems - ARPs, DNS Slow or No Response, TCP SYN Retransmissions, Resets, or maybe even unusual STP activity. That is where I would start at least!

  • @yasyasmarangoz3577
    @yasyasmarangoz3577 Месяц назад

    Yooooo thanks man 🔥

  • @supergocho
    @supergocho 2 года назад

    One question: Where is the ACK for packet 9. I see the ACK for packet 10 but no for packet 9

  • @jparaujobezerra
    @jparaujobezerra 3 года назад

    Learning a lot! great!

  • @Youtuber-bb5bo
    @Youtuber-bb5bo 3 года назад

    Can anyone help me I’m trying to play ps4 vanguard and I have to put a port forwarding but the TCP says : 1935, 3478-3480. What to I do with the 1935?? Where do I put that number ??? Please help

  • @luckymontero3549
    @luckymontero3549 3 года назад

    Hi Chris. thank you for this channel it really help me in my every day work. Just wondering if you can help. When I tried to upload a file in website I'm getting error. Where do I start looking in wireshark? thank you in advance.

    • @ChrisGreer
      @ChrisGreer  3 года назад +1

      Lots of ways you could go with that. Start with filtering on the conversations between client and server, then add in the protocol in use (is it HTTPS? SMB?) Then at the time the error flags look for resets, application hangs, or tcp delays. That is where I would start, but it is hard to say without more detail into the issue.

    • @luckymontero3549
      @luckymontero3549 3 года назад

      @@ChrisGreer cool.. thanks for giving direction where to start looking. I was able to resolved the issue... Kudos to you!

  • @kanakashriyakrishnamoorthy8821
    @kanakashriyakrishnamoorthy8821 2 года назад

    I was running wireshark on my Wifi and I observed that for the same source and destination it was sometimes using TCP and sometimes QUIC which is UDP based ? How is it possible ?

    • @ChrisGreer
      @ChrisGreer  2 года назад +1

      Right now since we are in an adoption process with QUIC, most sites support both. So you may see a TCP connection and a QUIC connection until the site goes all QUIC from the get-go. Even then, we'll probably still see TCP hanging around for some time over the web!

  • @muttabonda3602
    @muttabonda3602 3 года назад

    Please upload tutorial for SSL handshake, i almost tried all the websites but no one explained clearly.

    • @ChrisGreer
      @ChrisGreer  3 года назад +6

      Great idea, I am actually working on a TLS Handshake video!

    • @muttabonda3602
      @muttabonda3602 3 года назад

      @@ChrisGreer I'm Waiting... :)

  • @navsam7594
    @navsam7594 2 года назад

    Hey Chris,
    I know you are the only one who can help me. I am running an iperf between two sites and the link is 1G.
    When I run with linux I get 1G either way. As soon as I install windows on it, I get 150Mbps.
    Not sure why am I experiencing this behavior, can share the PCAPs as well.

    • @ChrisGreer
      @ChrisGreer  2 года назад +1

      Hey - I saw your pcaps you sent over. You need to manually increase the window size on the iPerf test. It is only going to use 264KB as a congestion window by default. Use the -w switch and I would crank it up to 2,000,000 (2MB) in your case due to the latency.

    • @navsam7594
      @navsam7594 2 года назад

      @Chris Greer I tried and it end up in an error message "socket buffer is not set correctly".

  • @usf4886
    @usf4886 2 года назад

    2:18 every byte has a sequence number??????

    • @ChrisGreer
      @ChrisGreer  2 года назад

      Yup. RFC793 3.3 -A fundamental notion in the design is that every octet of data sent
      over a TCP connection has a sequence number.

  • @jasonnavarro5971
    @jasonnavarro5971 3 года назад

    Thank you. 👍

  • @socat9311
    @socat9311 3 года назад

    Given your knowledge of packets and protocols, do you ever play with tools like scapy to test things? I think learning to craft packets it's awesome way to learn, so if you ever upload something like that I will double-like it haha

    • @ChrisGreer
      @ChrisGreer  3 года назад

      Hey! I haven't used it yet but it is on my punch list since I'm digging much deeper into cybersecurity these days.

    • @socat9311
      @socat9311 3 года назад

      @@ChrisGreer awesome. love your content mate, I love cybersec and wireshark is a total must for it. Thanks for all the time you invest in this content.

  • @wedarengao8595
    @wedarengao8595 2 года назад

    Thank! 谢谢您!

  • @Themrhamoud
    @Themrhamoud 3 года назад +1

    You look like an American actor who did venom 2

  • @mahavirsinghrajpurohit8004
    @mahavirsinghrajpurohit8004 2 года назад

    Video 2

  • @flinfaraday1821
    @flinfaraday1821 2 года назад

    I wonder if TikTokkers appreciates what happens when they send out their trash over the internet :D

  • @zsahe21
    @zsahe21 Год назад

    !!!!!!

  • @redouaneelouidani1243
    @redouaneelouidani1243 3 года назад +9

    Learning a lot with you. Thank you so much

  • @TiborBondor
    @TiborBondor Год назад

    Very good explanation.