TCP Fundamentals - Retransmissions, Window Size // TCP/IP Explained

Поділитися
Вставка
  • Опубліковано 7 лют 2025

КОМЕНТАРІ • 129

  • @jhreaside
    @jhreaside 5 років тому +59

    Chris, I think this may be the best material I've ever come across for understanding some of the specific elements of TCP. The time you spent on the receive window confirmed the detail I have in my notes, but the congestion window explanation has always been somewhat elusive online! I have some pretty concise notes, but to see the concepts played out visually in a steady way, and also in context with the capture files, was simply great to watch. Didn't feel like an hour and 20mins. Some great tips too when analysing in Wireshark. Great work - this is how TCP should be taught.

    • @ChrisGreer
      @ChrisGreer  5 років тому +7

      Thanks so much for the comment! I appreciate the feedback and will do my best to keep the content coming. Thank you.

  • @funeralfog-vf4gg
    @funeralfog-vf4gg Рік тому +3

    Im 40 years old.. just got interested into this stuff and working on my ccna and i wish you were my teacher..thank you for your great videos

  • @abc-by1kb
    @abc-by1kb 8 місяців тому +3

    Man your way of explaining things is just absolutely amazing! Great video!

  • @matthuff420
    @matthuff420 4 роки тому +3

    Awesome stuff, both parts. I've worked as an F5 support engineer for a couple years prior to watching this, and I took a ton away from watching these two sessions. Thanks alot man!

    • @ChrisGreer
      @ChrisGreer  4 роки тому

      Thanks for the comment Matt!! I'll keep making it!

  • @PatoxMaia
    @PatoxMaia 5 років тому +3

    Hello Chris,
    Many thanks for uploading this content.
    I'm networking core and I'm surely one of those layer 3 heads. I normally joke about doing stuff at layer 3.5 to my application colleagues. Your presentation changed a bit of my perception on troubleshooting with wireshark.
    I see I still having so much to cover on my studies and I appreciate very much your effort to provide such quality material.

    • @ChrisGreer
      @ChrisGreer  5 років тому

      Thanks Cleber - I will do my best to keep it up. I appreciate the comment. Make sure to subscribe!

  • @iMPRE7ed
    @iMPRE7ed 6 років тому +13

    Chris, awesome as always. When I started looking deeper into protocol analysis, of course with your help, I started understanding network and other technologies much better, it all started to make so much more sense. Thank you for those sessions, master!
    PS please do more, boy do i enjoy those

  • @qwerty4me333
    @qwerty4me333 2 роки тому

    This is an awesome talk I am new to wireshark and packets but watching your talk on D.Bombal right before this talk made the topic understandable and approachable.

  • @koneru06
    @koneru06 3 роки тому +1

    You are the best and no one can beat you... Keep up the good job...

  • @bijayjungkarki7369
    @bijayjungkarki7369 4 роки тому +2

    As a fresher starting as a Support engineer this was amazing session on TCP, hope to see more!

  • @XanderPetty
    @XanderPetty 6 років тому +5

    These are the best two TCP videos I've seen. Studying for the CCNP ROUTE and chapter one is diving into TCP. This really helped tie things together.

    • @ChrisGreer
      @ChrisGreer  6 років тому +1

      Thanks for the comment Xander. Hope you ace that test.

  • @manigandansrinivasan5194
    @manigandansrinivasan5194 3 роки тому +1

    Chris .... You did mindblowing lecture ... Your selfless thought by sharing what you learned are commendable ....

    • @ChrisGreer
      @ChrisGreer  3 роки тому

      Thank you for the comment!

  • @lenyfreeman3807
    @lenyfreeman3807 Рік тому

    These two videos took my understanding of TCP to a whole new level. Thank you.

    • @ChrisGreer
      @ChrisGreer  Рік тому

      Glad you like the content! Thanks for the comment.

  • @loodack
    @loodack 6 років тому +19

    This guy does awesome job at explaining!

    • @ChrisGreer
      @ChrisGreer  6 років тому +3

      Thanks for the comment!

  • @PatrickLangendoen
    @PatrickLangendoen 6 років тому +3

    Been looking out for the second part for a while. Thank you, sir. This is very informative and brought in a very good way. You rock!

  • @bradstudio
    @bradstudio 2 роки тому +1

    Excellent video to get interested in the guts of TCP. This has me very interested in testing my network and servers now to see if there are any optimizations or bottlenecks now.

  • @sarangad8701
    @sarangad8701 2 роки тому

    Chris, this is like getting enlightened, thank you

  • @jerryxie777
    @jerryxie777 2 роки тому

    Great great vedio, this is the best course about the usage for wireshark I have even seen even 4 years pass. Thank you😊

  • @sameerkumar1884
    @sameerkumar1884 5 років тому +5

    Very Well explained case files.. you made me fan of you

  • @theotherguy6282
    @theotherguy6282 2 роки тому

    thanks man, real nice tutorial, i love the way you started from scratch and gave a solid base. thanks again

  • @JonathanAnon
    @JonathanAnon 6 років тому +2

    Hi Chris, you are an excellent presenter, and I learn a lot from your videos. Well done.

  • @siamosht
    @siamosht 4 роки тому +3

    You are awesome man, learnt so much from this. Great explanation.

    • @ChrisGreer
      @ChrisGreer  4 роки тому

      Thanks for watching! Glad it helped.

  • @aditisaikia3286
    @aditisaikia3286 3 роки тому +5

    TCP training at its best...

  • @Black_Swan68761
    @Black_Swan68761 4 роки тому +1

    Awesome. Very well explained. Great Job, Chris!!

  • @cssuresh12
    @cssuresh12 6 років тому +8

    Chris, As usual this is fantastic Thank you

  • @briandsouza1550
    @briandsouza1550 3 роки тому +1

    Such good stuff!! Thanks Chris. Indebted!

  • @nandhakumarnnk2293
    @nandhakumarnnk2293 4 роки тому +2

    Excellent Sir..... Worth 🥰🥰🥰

    • @ChrisGreer
      @ChrisGreer  4 роки тому

      Thank you for the comment!

  • @umeshshetty0605
    @umeshshetty0605 2 роки тому

    Watched this video for the 7th time and can see this for 7 more time :)

  • @453nabeel
    @453nabeel 5 років тому +3

    Thanks for the great session.

  • @mosheenkhan
    @mosheenkhan 5 років тому +5

    Havent seen such detailed explanation of TCP. This is awesome stuff Chris. Do you write books as well.

  • @domagoj19zg
    @domagoj19zg 4 роки тому +3

    Thank you! This was very very clear an simple, just like it should be :)

    • @ChrisGreer
      @ChrisGreer  4 роки тому

      Awesome! Thanks for the comment - I'm really glad you liked it.

  • @maumotec2345
    @maumotec2345 2 роки тому +2

    What an amazing content this is. You rock Chris.

  • @danbyun0110
    @danbyun0110 3 роки тому +1

    You're amazing! Thank you for the wonderful content!

  • @sreenislg
    @sreenislg 6 років тому +3

    Another[part-2] awesome video... Thank you very much; many of the basic concepts are cleared now; Do you have a part 3?

    • @ChrisGreer
      @ChrisGreer  6 років тому

      At this point no - but I do offer remote training on Wireshark and TCP. Please contact me at www.packetpioneer.com/contact for details.

  • @netskills
    @netskills 4 роки тому +2

    Hi, Chris! Great explanation! Thanks! I just wonder, could you share your traffic dumps so we could repeat all your moves.

    • @ChrisGreer
      @ChrisGreer  4 роки тому

      Greetings NetSkills! For this session I decided not to share them for the general public. But, several of my videos have shared trace files that you can follow along on. Thanks for the comment.

  • @romualdgarcia9108
    @romualdgarcia9108 4 роки тому +1

    Great job! Thanks!

  • @innuite
    @innuite 3 роки тому +2

    65535 - that's how many "aha" moments I got watching your video. Awesome stuff Chris!!

  • @Lovingstoryteller
    @Lovingstoryteller 4 роки тому +2

    Hi Chris, Your videos are really helpful and awesome explanations. I really start to enjoy packet analysing. Is there any place I can get different captures with issue description to analyse and later verify my analysed report is correct? thank you for the great videos again

    • @ChrisGreer
      @ChrisGreer  4 роки тому +2

      I am working on more "here is a problem, find the solution" videos! Stay tuned and subscribed for these.

    • @Lovingstoryteller
      @Lovingstoryteller 4 роки тому +1

      @@ChrisGreer great. looking forward to it :)

  • @anurag3v4
    @anurag3v4 3 роки тому +2

    Thanks Chris
    It's a wonderful explanation
    1 doubt: how did you calculate the number of packets that came before ack "referring timestamp 41:00 to 43:00 in this video"?

    • @TruthYouNeed
      @TruthYouNeed 2 роки тому

      He counts them until he comes across a delay if you look at the delta time.

  • @richardwang3438
    @richardwang3438 3 роки тому

    real good stuff, I must leave a comment and click a like!

  • @cantaff0rd2
    @cantaff0rd2 2 роки тому +2

    Hi Chris, very nice lecture this is becoming my favorite channel of all time :D.
    I'm a beginner in TCP/IP and the discussion got a little too complex to me at the end so I got lost a bit please clear this up if you can:
    In the last part 'TCP MSS Problem' if I understand correctly the MSS which was agreed by the server&client during the handshake was reduced mid communication because of some router which was in between them? Did I get that right? And if so, how is that possible, isn't the MSS something which is only agreed upon during the 3 way handshake and then set in stone for the remaining of the connection? How can some intermediary router change that?

    • @ChrisGreer
      @ChrisGreer  2 роки тому

      Hey Paul - Changing the TCP MSS is an option on some routers. Cisco for example allows us to do it for every SYN that goes by. Try searching Google for whatever router manufacturer you are using. The feature is generally called TCP MSS clamping.

    • @cantaff0rd2
      @cantaff0rd2 2 роки тому

      @@ChrisGreer thank you!

  • @gusmcknight6057
    @gusmcknight6057 6 років тому +2

    Thank you for the great information.

  • @EvilSapphireR
    @EvilSapphireR 5 років тому +2

    I had the exact same issue in my network as described in your last packet capture. A packet capture on client side was showing that a 1460 byte packet got lost somewhere on the way. Problem was the network in between was managed by a not so cooperative vendor and the server was in control of a different organisation, so getting a server capture or adjusting mss on a network node in between wasn't an option. What I did to resolve the scenario was to decrease the mtu on the client pc itself so that the MSS would stay low to 1398 bytes, which was the MSS value that was working as I observed on a different application. The application did run this time but we're still seeing some chunks of 1398 byte packet get dropped as well which is retransmitted back to the client after a while (without mss adjustment, the retransmitted Packets are 1398 bytes as well), so slowness in opening the application is still there. Would you have any idea what could be causing this? Thanks so much for the guidance anyway Chris! Priceless lectures!

  • @manasacharya4554
    @manasacharya4554 2 роки тому

    Chris, well explained as always. Can you please upload the packet capture ?

  • @StanislavRoss
    @StanislavRoss 4 роки тому +1

    Some time passed since this video was published but I`ll try to ask anyway :)
    First... After many years at IT in different roles (System\Network\Security\Managment) I have to say that this is great and clear explanation of TCP and I learned new stuff.
    Now the question regarding the last case study about LDAP. Actually what happend is some FW between the Client and the File Server just dropped packets (from server to the client) because their MSS exceeded what it alterded in the original SYN,SYN-ACK,ACK packets exchange? I get it right ?

    • @ChrisGreer
      @ChrisGreer  4 роки тому

      Hello, thanks for the comment. Close.... A router at the client end was not altering outbound syns to reflect an MSS of 1432 rather than 1460. So the server was sending packets that were too large, thinking that the true MSS was 1460

  • @ramandeora5881
    @ramandeora5881 11 місяців тому

    Awesome training! Can I please get these wireshark files as I need to give training in my office!

  • @Nicojiin
    @Nicojiin 4 роки тому +1

    You are a god

  • @bernafunda
    @bernafunda 6 років тому +2

    I will definitely go to next sharkfest. Do you have any session or recommendation on detailed SACK analysis ? I also would like to know if you have anything to figure out mtu issues.

    • @ChrisGreer
      @ChrisGreer  6 років тому +3

      Hello Nanis - not off the top of my head, but SACK analysis would be a great session title. Maybe I'll do that for Sharkfest US 2019

    • @bernafunda
      @bernafunda 6 років тому +1

      Chris Greer awesome sounds good

    • @sreenislg
      @sreenislg 6 років тому +1

      Interested to attend 2019 session. who sponsors the whole expenses of the trip/program. I think, individual(candidate) has to bear

  • @trduff01
    @trduff01 Рік тому

    Thanks for these great videos, I'll bet the slow application was a tape drive.

  • @453nabeel
    @453nabeel 5 років тому +2

    Another fantastic session !!
    Chris , will there be Sharkfest 2019 session? & most importantly will we be able to hear from you this year ?

    • @ChrisGreer
      @ChrisGreer  5 років тому +1

      Yes! I will post it on my channel soon.

    • @453nabeel
      @453nabeel 5 років тому +1

      @@ChrisGreerLooking forward for more interesting discussion. You truly are an expert !.

  • @Anayasfunzone15
    @Anayasfunzone15 2 роки тому

    Chris, great content as always. I have a scenario where receiver advertised it’s receive window of 211 no window scaling and next packet sender still sends 1460 bytes why would it do that knowing the receiver window size is low. Sender continues to do that why would it do that?

    • @ChrisGreer
      @ChrisGreer  2 роки тому

      Any chance we missed the TCP handshake in the pcap?

  • @acasualproduction
    @acasualproduction 2 роки тому

    Hi Chris,
    This is really helpful. I got one question. In one capture, I can see MSS is set as 1460 (as per SYN, SYN/ACK) but later I can see TCP segment length (from client)much higher than 1460 (as high as 7K, 14K, 30K etc). How to explain that? The capture is on the client side with iperf. The client and servers are back to back connected.

    • @ChrisGreer
      @ChrisGreer  2 роки тому +2

      Hey thanks for the comment. That is because you are capturing on the client before the NIC segments the data. That is a very common thing, the kernel stack can offload TCP segmentation down to the NIC, so that the packet driver level, we see really large frames, but if these same frames were captured on the wire, they would be segmented according to the link-partner MSS or smaller.

    • @acasualproduction
      @acasualproduction 2 роки тому

      Got it. Thanks a lot..

  • @sagardhiman5181
    @sagardhiman5181 3 роки тому +1

    Hi Chris, Is there a relation b/w receive window and ACK?

    • @ChrisGreer
      @ChrisGreer  3 роки тому +1

      They are different concepts, but related - when a receiving TCP stack is sent data, it should ack that data as soon as possible. Depending on the stack, this may be after receiving one, two, or more segments of data. The RX window is the amount of data that can be received at once. It is basically a receive buffer and limits the amount of outstanding data a sender can put out on the wire. I hope that helps.

  • @Austin_033
    @Austin_033 6 років тому +2

    Hey Chris,
    Thank you for the informative videos! Quick question.. Do you know what "4 "NOP" in a row, router may have removed some options" warning/error code means? Thank you for any help :)

  • @kalaiyarasanmanoharan5880
    @kalaiyarasanmanoharan5880 6 років тому +2

    Awesome session. Thanks Chris Greer !!

  • @453nabeel
    @453nabeel 5 років тому +2

    Do you recommend any authentic book on TCP that should be on our bookshelf and the one that we can consult any time? Please mention. Thanks

    • @ChrisGreer
      @ChrisGreer  5 років тому +3

      I constantly refer to TCP/IP Illustrated Volume 1 - Second Edition. I think that book should be on the shelf of every network engineer.

    • @453nabeel
      @453nabeel 5 років тому +1

      @@ChrisGreer thanks you chris

  • @muneebrahman.m9079
    @muneebrahman.m9079 3 роки тому +1

    if the server side bucket is filling up and server side app is the cause how can we say client is hanging us up

    • @ChrisGreer
      @ChrisGreer  3 роки тому +1

      In that case the server would be hanging us up if its RX window was filling.

  • @lalindamadurangagamage6685
    @lalindamadurangagamage6685 6 років тому +2

    Great session. can you please do a session on "your way of filters".

    • @ChrisGreer
      @ChrisGreer  6 років тому

      ua-cam.com/video/68t07-KOH9Y/v-deo.html Here you go.

  • @i_tsyg2531
    @i_tsyg2531 5 років тому +1

    Awesome!

  • @mishasound
    @mishasound 2 роки тому

    Any resources on how to start catching packets (for almost beginners)? Thank you.

  • @yt_legend_papa
    @yt_legend_papa 5 років тому +2

    Hello @all: is there a possibility to get the Trace Files?

  • @etclee6630
    @etclee6630 6 років тому +1

    thank you!

  • @eslamesam547
    @eslamesam547 3 роки тому

    Hello Chris, may I ask for the pcap traces for window size

  • @MrAbapper
    @MrAbapper 3 роки тому

    For case study, MSS problem i was confused with the explaination, since it was saying the outbound router of the client side was replaced and missed the config, but the talking at the end is saying the server is getting 1432 mss advertised by the client, and but the trace we actually referring to the client side capture rigth? So the server side is thinking client is doing 1460, but client side router is only doing 1432, and passed mss size to client, so when server tried 1460, no go, being dropped by client side router.

    • @ChrisGreer
      @ChrisGreer  3 роки тому

      Hello, great question. Yes that is correct. The outbound router on the client side was not adjusting the MSS in the outbound SYN. So when it arrived at the server, it was 1460. But the outbound router on the server side was adjusting the SYN MSS in the opposite direction. So the client knows to not send anything larger than 1432, but the server never got the message, so it sends 1460's in an attempt to use the full MSS of the client.
      Hope that helps. Thanks for the comment!

  • @alexanderreyer2134
    @alexanderreyer2134 5 років тому +1

    Great!

  • @patrickborys3490
    @patrickborys3490 2 роки тому

    Love it !!!!!

  • @anthonykahwati5999
    @anthonykahwati5999 5 років тому +1

    Awesome.....

  • @DarrienGlasser
    @DarrienGlasser 3 роки тому

    Another banger

  • @kansesiddhesh5536
    @kansesiddhesh5536 3 роки тому

    So if server is only sending mss of 1432 instead of 1460 the remaining 28 packets will go in next round trip. Will client send sack for them?

  • @mybluemars
    @mybluemars 5 років тому +1

    51:30 TCP Timestamps

  • @ExcelsiorEngineering
    @ExcelsiorEngineering 2 роки тому

    Thank you very nuch

  • @protek7028
    @protek7028 2 роки тому

    Can i get this pcapng file ?

  • @gabrielannk
    @gabrielannk 3 роки тому

    I want to star every s i n g l e Wednesday like 0:06

  • @EPurnachandrapatro
    @EPurnachandrapatro 7 місяців тому

    liked it

  • @edsonrocks
    @edsonrocks 4 роки тому +1

    Thank you for this incredible and very clear explanation Chris, you rock!
    BTW, at 36:23 Chris has mentioned about Simon's talk about different TCP congestion algorithms, it's available at:
    ua-cam.com/video/2coqZ07-Yhw/v-deo.html

    • @ChrisGreer
      @ChrisGreer  4 роки тому +1

      Thanks for the comment Edson! I really appreciate the feedback.

    • @harishsharma9621
      @harishsharma9621 3 роки тому +1

      ua-cam.com/video/8RI9wtmcpeY/v-deo.html - this is probably the one that Chris referred to in the video

  • @DarrienGlasser
    @DarrienGlasser 3 роки тому

    No part 3? 🥺🥺

    • @ChrisGreer
      @ChrisGreer  3 роки тому +1

      Check out my course at bit.ly/wiresharktcp - that is where all the fun bits are.

    • @DarrienGlasser
      @DarrienGlasser 3 роки тому

      @@ChrisGreer 🙏

  • @martinencizo6513
    @martinencizo6513 2 роки тому

    Please please show subtitles in spanish or english I am from Colombia this video is viewing in all world

    • @ChrisGreer
      @ChrisGreer  2 роки тому

      Ok I just fixed that. Thank you!

  • @faizanashraf1367
    @faizanashraf1367 3 роки тому

    I am spending my valentine with TCP

  • @programacion3694
    @programacion3694 5 місяців тому

    que grande el pibardÚ

  • @HelloWorld-tn1tl
    @HelloWorld-tn1tl 3 роки тому

    That guy who keep cough should just get out ...

    • @ChrisGreer
      @ChrisGreer  3 роки тому

      agreed. Today the whole audience probably would have gotten up and walked out!

  • @keithhuynh9359
    @keithhuynh9359 6 місяців тому

    So freaking slow over over