zoukankan      html  css  js  c++  java
  • 五层协议及tcp三次握手四次挥手

    一.五层协议:
    物理层:传送数据  通过高低电平传输数据
    数据链路层:ethernet  以太网协议
                必须有一块网卡:12位16进制数,前六位位厂商编号,后六位为流水线号 (定位到某一台机器上)
                有一个数据帧 :  (报头+数据部分)
                 →报头(head:发送者:6个字节,接送者:6个字节,数据类型:6个字节)
                 →数据部分:date 数据本身
    广播只能在一个局域网里看到,基本靠吼!
    网络层:ip协议的作用有两个,一个是为每一台计算机分配ip地址,另一个作用是确定哪些地址是否处于同一个子网络。
       子网掩码的作用是判断一个IP地址是否处于同一个子网网络   两个局域网之间的数据传输是要通过网关之间传输的
    传输层:端口 找到计算机中软件的地址  tcp协议:有序可靠传输,原因是因为当数据传输时,当目标接受到发送端的数据时,会返回一个SYN值。
      udp 协议  无序不可靠传输。封一个端口  源端口 目标端口
    应用层:软件 http ftp 协议 可以自己定义

    两个不同网之间的计算机中软件中数据的传输过程:
    应用层产生数据(自己定义的协议)→→→→传输层(封一个端口,原端口,目标端口)→→→→网络层(封一个IP地址,原IP地址,目标IP地址)
    →→→→数据链路层(封一个网卡,原MAC地址,目标MAC地址)→→→→物理层

    同一个子网通信依靠MAC地址,不同的子网通信依靠IP地址,
    要找到计算机中的软件需要端口号,MAC地址,ip地址三个。

    二.传输层tcp协议(有序可靠传输协议)的三次握手和四次挥手:

    三次握手:
    首先客户端向服务端发个请求,给个标志位SYN=x,服务端接受到之后返回一个ACK=x+1,其中syn代表客户端要
    和服务端之间建立一条链接。同时服务端也会向客户端发送一个标志位SYN=y,这里的syn表示服务端要和客户端
    之间建立一条链接,同时客户端,并返回ACK=y+1,表示同意

    数据传输:客户端在向服务端发送数据的时候会发送一个syn,服务端接受到之后也会返回一个ack,
    表示收到了数据

    四次挥手:当数据传输完成后,客户端会发送一个请求给服务端,表示要断开与服务器之间的链接
    ,当服务器收到之后,会返回ACK,表示同意,同时,也会发送一个请求给客户端,表示要断开
    之间的链接,客户端收到之后,也会返回一个ACK,表示同意。

    出现四次挥手的原因是因为当服务器表示要与客户端之间的链接断开时,服务端可能还有数据没有传输完。

    TCP称为可靠传输的原因是因为:当客户端发送数据的时候,服务端在收到之后,会返回一个ACK,然后客户端
    才会把缓存清除,所有保证数据的可靠传输。

    三.补充
    DHCP负责给计算机ip地址,网关,DNS,

    DNS基于udp协议 DNS是解析域名的

    解析域名的步骤:

    查询一个域名,首先访问本地的DNS,如果有就根据域名用DNS解析成IP地址

    如果没有就访问根DNS服务器,全世界总共有13台根DNS服务器。

  • 相关阅读:
    Ubuntu18.04+windows10双系统时间同步教程
    Ubuntu官方源
    Ubuntu 16.04下OLSR协议安装教程
    Ubuntu 18.04中的Vim编辑器的高级配置
    关于vue-cli的安装
    var与let、const的区别
    jq点击相册弹出弹窗并可以轮播相册效果
    css三角形上下左右实心空心尖角箭头
    leetcode-44. Wildcard Matching
    c++转换构造函数和类型转换函数
  • 原文地址:https://www.cnblogs.com/njzy-yuan/p/6879849.html
Copyright © 2011-2022 走看看