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

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 มิ.ย. 2024
  • In this video we are going to dive into TCP sequence number analysis. Every Packet Head needs to do this at one point or another. So let's get some practice. In this hands-on video, make sure to download the pcap below so you can follow along as we study a problem that was due to a low network MTU on the path.
    ---------Download the pcap here----------
    packetpioneer.com/wp-content/...
    == More On-Demand Training from Chris ==
    ▶Getting Started with Wireshark - bit.ly/udemywireshark
    ▶Getting Started with Nmap - bit.ly/udemynmap
    == Live Wireshark Training ==
    ▶TCP/IP Deep Dive Analysis with Wireshark - bit.ly/virtualwireshark
    == Private Wireshark Training ==
    Let's get in touch - packetpioneer.com/product/pri...
    Hope this helps Packet People! Please like, share, subscribe!
    Chapters:
    0:00 Intro
    1:01 Configuring Wireshark
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 112

  • @karimhamid7460
    @karimhamid7460 ปีที่แล้ว +6

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

  • @Zerback
    @Zerback 2 ปีที่แล้ว +7

    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.

  • @DocFortyThree
    @DocFortyThree ปีที่แล้ว

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

  • @dmitrysimbirtsev6685
    @dmitrysimbirtsev6685 2 ปีที่แล้ว +8

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Thanks, will do!

  • @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.

  • @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!!!!

  • @ericwf1
    @ericwf1 2 ปีที่แล้ว

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

  • @nidhinyou
    @nidhinyou 3 หลายเดือนก่อน

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

  • @redouaneelouidani1243
    @redouaneelouidani1243 2 ปีที่แล้ว +9

    Learning a lot with you. Thank you so much

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Happy to hear that!

  • @267praveen
    @267praveen 2 ปีที่แล้ว +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 🌎 !!!

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Thanks for the comment!

  • @ShadyNetworker
    @ShadyNetworker 2 ปีที่แล้ว +2

    Amazing video again, thanks for putting these out!

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Glad you like them!

    • @ShadyNetworker
      @ShadyNetworker 2 ปีที่แล้ว

      @@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.

  • @juanrebella2589
    @juanrebella2589 ปีที่แล้ว

    Thanks man, appreciate your work.
    Greetings from Manchester.

  • @felix5729
    @felix5729 2 ปีที่แล้ว

    Great explanation. First English speaking TH-camr I have followed.

  • @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!

  • @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!

  • @pedrojaviermunozgarcia3721
    @pedrojaviermunozgarcia3721 2 หลายเดือนก่อน

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

    • @ChrisGreer
      @ChrisGreer  หลายเดือนก่อน

      Glad it was helpful!

  • @98854arjun
    @98854arjun 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +1

      My pleasure! Thanks for the shout out from India.

  • @loveplanes
    @loveplanes 3 หลายเดือนก่อน

    Amazing! Thanks for sharing

  • @teddybean9948
    @teddybean9948 11 วันที่ผ่านมา

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

  • @jjames7206
    @jjames7206 2 ปีที่แล้ว

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

  • @AbhishekYadav-kc1df
    @AbhishekYadav-kc1df 9 หลายเดือนก่อน

    Awesome explanation !! Thank you so much

    • @ChrisGreer
      @ChrisGreer  9 หลายเดือนก่อน

      You are welcome!

  • @cyber_student
    @cyber_student 2 ปีที่แล้ว

    🔥 🔥 🔥. You are the Truth my guy…

  • @punggukbulan8674
    @punggukbulan8674 2 ปีที่แล้ว

    Thanks Chris to spread this important knowledge..

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Thank you for the comment!

  • @colinrogers9927
    @colinrogers9927 ปีที่แล้ว

    Great explanation sir

  • @TiborBondor
    @TiborBondor 8 หลายเดือนก่อน

    Very good explanation.

  • @Casperr123
    @Casperr123 2 ปีที่แล้ว

    Great teaching skills Chris, really really great

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Thanks Peter! I appreciate the feedback.

  • @KADAMORIS
    @KADAMORIS 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Glad you like them!

  • @georgemilev3244
    @georgemilev3244 10 หลายเดือนก่อน

    Awesome stuff!

  • @mcgirishnetwork
    @mcgirishnetwork 2 ปีที่แล้ว +1

    Very useful information for troubleshooting

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Glad it was helpful!

  • @PouriyaJamshidi
    @PouriyaJamshidi 2 ปีที่แล้ว

    This was fantastic!

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Thanks for watching!

  • @mike_on_tech
    @mike_on_tech 2 ปีที่แล้ว

    Incredible teaching. Thanks so much

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

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

  • @padmanathanvelusamy8580
    @padmanathanvelusamy8580 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Glad to hear it!

  • @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).

  • @jparaujobezerra
    @jparaujobezerra 2 ปีที่แล้ว

    Learning a lot! great!

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +1

      Glad to hear that!

  • @pradnyasy8082
    @pradnyasy8082 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Glad to hear that!

  • @malkeetkalera7520
    @malkeetkalera7520 2 ปีที่แล้ว

    Thanx for uploading 🙏

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      You are welcome!

  • @PraveenRai
    @PraveenRai 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +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.

  • @asiyaahmad9866
    @asiyaahmad9866 10 หลายเดือนก่อน

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

  • @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.

  • @wedarengao8595
    @wedarengao8595 ปีที่แล้ว

    Thank! 谢谢您!

  • @jasonnavarro5971
    @jasonnavarro5971 2 ปีที่แล้ว

    Thank you. 👍

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      You are welcome!

  • @haasjenl9247
    @haasjenl9247 2 ปีที่แล้ว

    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  2 ปีที่แล้ว +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.

  • @walternakatana7603
    @walternakatana7603 2 ปีที่แล้ว

    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  2 ปีที่แล้ว +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!

  • @IK-iu4rz
    @IK-iu4rz 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +1

      Glad you enjoyed it

  • @nailsaggitarius4212
    @nailsaggitarius4212 2 ปีที่แล้ว +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.

  • @user-zc4dw4jr6m
    @user-zc4dw4jr6m 2 ปีที่แล้ว

    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  2 ปีที่แล้ว +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!

    • @user-zc4dw4jr6m
      @user-zc4dw4jr6m 2 ปีที่แล้ว

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

  • @socat9311
    @socat9311 2 ปีที่แล้ว

    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  2 ปีที่แล้ว

      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 2 ปีที่แล้ว

      @@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.

  • @amansingh_797
    @amansingh_797 2 ปีที่แล้ว

    any analysis on sftp..ftp tftp ..etc

  • @redrover06able
    @redrover06able ปีที่แล้ว

    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?

  • @majiddehbi9186
    @majiddehbi9186 2 ปีที่แล้ว +1

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +2

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

  • @luckymontero3549
    @luckymontero3549 2 ปีที่แล้ว

    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  2 ปีที่แล้ว +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 2 ปีที่แล้ว

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

  • @Youtuber-bb5bo
    @Youtuber-bb5bo 2 ปีที่แล้ว

    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

  • @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.

  • @supergocho
    @supergocho ปีที่แล้ว

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

  • @LilleFjert
    @LilleFjert 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +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.

  • @ashika2884
    @ashika2884 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

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

    • @ashika2884
      @ashika2884 2 ปีที่แล้ว

      @@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!

  • @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!

  • @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".

  • @mahavirsinghrajpurohit8004
    @mahavirsinghrajpurohit8004 ปีที่แล้ว

    Video 2

  • @muttabonda3602
    @muttabonda3602 2 ปีที่แล้ว

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

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว +6

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

    • @muttabonda3602
      @muttabonda3602 2 ปีที่แล้ว

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

  • @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.

  • @Themrhamoud
    @Themrhamoud 2 ปีที่แล้ว +1

    You look like an American actor who did venom 2

    • @ChrisGreer
      @ChrisGreer  2 ปีที่แล้ว

      Thanks! I think?

  • @zsahe21
    @zsahe21 ปีที่แล้ว

    !!!!!!

  • @flinfaraday1821
    @flinfaraday1821 ปีที่แล้ว

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