• 网络通信及TCP/IP协议


    TCP/IP
    tcp/ip协议是协议家族的简称

    1. IP 相当于电话号码,寻址时的地址。
    2. TCP 面向连接的、可靠的流协议。就相当于我们在打电话前的确认、结束时的确认、控制流程。就比如说我们打电话 喂,小丽吗。好的,再见。你大点声,我听不见。
    3. UDP 面向无连接的通讯协议。就是不可靠的连接。

    TCP/IP中的数据术语
    ● 数据包(packet) 是全能型术语
    ● 报文/消息(message) 应用层传到传输层(tcp)的数据
    ● 报文段(segment) TCP数据流中的信息,报文加上tcp包首部(20字节)
    ● 数据报(datagram) IP中数据的单位。是在报文段中添加ip包首部(20字节)
    ● 帧(frame) 表示数据链路层中包的单位

    在子网中,计算机通过mac地址进行寻址
    新入职员工加入公司网络,他会通过ARP协议(数据链路层)进行广播,公司的DHCP服务器收到广播后会根据新员工的MAC地址分配IP。

    TCP连接的三次握手
    思考:

    1. 三次握手分别发送的是什么报文
    2. 三次握手后客户端和服务端的状态是什么

    过程

    1. 第一次握手
      a. 客户端发起连接。客户端发起的报文中包含SYN的标志位置为1,还有一个随机值字段seq_no(比如为10000),此时客户端状态变为SYN_SENT
    2. 第二次握手
      a. 服务端发送报文。SYN标志位为1,ACK标志位为1,随机值字段ack_no为客户端的seq_no值加1,seq_no为随机值。此时服务端状态变为SYN_REVD
    3. 第三次握手
      a. 客户端发送报文。SYN标志位为1,ack_no为服务端报文seq_no的值加1。此时客户端状态变为ESTABLEISHED。
      b. 服务端收到客户端发来的报文,状态变为ESTABLEISHED。

    TCP四次挥手
    过程:

    1. 第一次挥手,客户端发送关闭请求。
    2. 第二次挥手,服务端相应客户端关闭请求。
    3. 第三次挥手,服务端发送关闭请求。
    4. 第四次挥手,客户端发送关闭确认请求。
    5. 相较于建立连接的三次握手不同,四次挥手既可以是服务端率先发起请求,也可是客户端率先发送请求。而三次握手,一定是客户端率先发送请求。

    为什么需要四次挥手?
    TCP是双全工(即客户端和服务端可以同时发送和接收请求),所以需要双方都确认关闭连接。

  • 相关阅读:
    js原型对象的使用
    JAVA 学习路线 学习大纲(java 进阶路线)
    BERT应用——文本相似度计算
    从海后丢掉“海后”这个角色说起—— 论VOC对于DTC品牌的重要性
    day14学习总结
    python中的range的详解
    Cocos Creator 3.6 新特性详解 2/3:渲染篇
    配置mysql+Navicat+XShell宝塔:Mark
    .net也能写内存挂
    SRM系统是什么?有什么作用?企业如何应用SRM系统?
  • 原文地址:https://blog.csdn.net/yfyh2021/article/details/125994659