zoukankan      html  css  js  c++  java
  • Tcp协议介绍

    前情提要:根据域名建立tcp链接之前要做两件事情,1 根据arp协议找到网管mac地址 2 通过dns服务器解析出域名的Ip地址,解析出域名的Ip地址之后就可以建立tcp链接了。

    tcp协议三个特点:1 实现可高传输 2 实现流量控制 3 避免网络拥塞

    tcp首部:

     序号:表示传输数据第一个字节 是整个数据中的第几个字节

     确认号:表示下一个链接过来的传输数据的第一个字节 是整个数据中的第几个字节

     URG:值为1时表示数据不用进入TCP缓存池排队,直接发送给接收端

     ACK:表示确认号码是否有效,0无效 1有效 

     SYN:值为1时表示发起会话请求的标识,其他为0后者不传(一般用于tcp握手阶段)

     PSH:值为1时表示接收端要提前提交给应用程序,不要进入TCP缓存池

     RST: 值为1时表示终端链接

     RST:值为1时表示释放链接

    TCP三次握手

    为什么要进行三次握手?

      理论上2次握手已经可以判断网络是通畅的,但是为什么还要进行第三次呢?主要是为了解决当第一握手时,如果出现网络延迟时,客户端一段时间没有收到服务器的响应 就会再发一次握手信息,此时服务器会给客户端一个响应。后面客户端一次发送的握手信息,又传送到服务器,此时服务器会在给客户端一个响应,此时客户端就不会在处理这个响应,如果没有第三次握手,服务器还在等待着客户端传输数据,会很浪费服务器资源。

    TCP四次挥手

    tcp 链接图

  • 相关阅读:
    难以实践敏捷:估算
    使用AsyncEnumerator简化异步操作
    ESXi 入门配置
    学习模式,不如先了解问题
    我应该用哪种虚拟机?(一)
    在2003上实现Custom Task Pane
    我应该用哪种虚拟机?(终)
    我应该用哪种虚拟机?(二)
    正则表达式周二挑战赛 第十二周
    [译]Node中的ES6特性
  • 原文地址:https://www.cnblogs.com/Tony100/p/11309189.html
Copyright © 2011-2022 走看看