网络协议

Posted xiaohei-chen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络协议相关的知识,希望对你有一定的参考价值。

1.内容大纲

  1. C/S. B/S架构
  2. 互联网通信原理
  3. osi七层协议(五层协议)
  4. udp与tcp
  5. TCP的三次握手四次挥手

2.具体内容

  1. C/S. B/S架构

    • C/S客户端与服务器之间的架构:
      • 优点:安全性高,个性化设置,功能全面,相应速度快
      • 缺点:开发成本高,维护成本高,(基于app),面向的客户固定
    • B/S浏览器与服务器之间的架构:
      • 优点:开发维护成本低,面向用户广泛
      • 缺点:安全性相对低,响应速度相对慢,个性化的设置单一
  2. 互联网通信原理

    • 传播方式:
      • 单播:一对一通信
      • 广播:一对多通信
    • 首先要通过各种物理连接介质连接
      • 网卡:与网线直接连接的硬件,确定计算机的mac地址
    • 找准确确定对方计算机(准确到软件)的位置
    • 通过统一的标准(一览子协议)进行数据的收发
  3. osi七层协议(五层协议)

    技术图片

    • 物理层:一系列物理连接介质:如网线,光线,电缆等
      • 物理层只负责传输,传输的数据是二进制比特数据流,将有数据链路层进行装包或者解包
      • 物理层由各种交换机与路由器连接
        • 交换机:将一堆电脑连接一起的设备
        • 路由器:
          • 虚拟分配ip地址(遵循DHCP协议)
          • 网光:连接外网
            • 自身路由器分配的IP地址均是内网IP地址
          • 计算连接最优路径
    • 数据链路层:(遵循以太网协议)
      • 按照一定的协议对比特流进行分组,遵循以太网协议、
        • 以太网协议:数据分组协议:
          • 一组电信号构成一个数据报,叫做帧
          • 每一帧分为:报头与数据体两部分
          • 报头:固定长度 18B:源地址|目标地址|数据类型
          • 数据体:46B<= 数据体<=1500B
      • Remark:
        • 报头固定字节数:统一标准,提取源地址与目标地址
        • 以太网协议中源目标地址如何设置唯一?
          • 网线直接接触的硬件就是网卡,网卡上有一个地址,mac地址,确定计算机唯一性的物理地址
          • 网卡上有12位,16进制组成的一串数字,前六位 厂商编号,后六位 流水线号
        • 广播:计算机最原始的通信方式,相当于群发
          • 数据链路层制作好的数据,理论上可以通信,但是效率低
          • 广播是有范围的,在同一子网,局域网内是通过广播的方式发消息
    • 网络层:(遵循IP协议与ARP协议)
      • 由于计算机在以太网的传输数据是以广播的方式,这种方式不能用于世界范围内的数据传输
      • IP协议:规定网络地址的协议,确定对方局域网位置
        • 每台计算机的网络地址通过IP地址与子网掩码共同确定
          • IP地址广泛采用IPV4,每位的取值范围位[0,255]
          • 确定地址的算法为:将两个地址均转换为八位2进制数字,并且将位数意义对应,每位做and运算,当两组地址所得数字转换为10进制数字并且相同时,则属于统一子网络。
      • ARP协议:通过对方的IP的地址获取对方的mac地址
        • 首先通过IP地址和子网掩码区分出自己所处的子网
        • 判断两个IP地址是否属于统一网络,如不同,则获取网关地址
        • 源mac以广播的方式传输数据,所有主机接受后,当发现目标IP为自己,就响应,并返回自己的mac地址
      • 广播,mac地址,IP三者并存可以找到世界上任意一台计算机
    • 传输层:(端口协议)
      • 数据的交互更为具体:是某台计算机的应用程序与对应计算机的应用程序间的数据交互
        • 端口:应用程序与网卡关联的编号,确定具体软件的位置
        • 广播,mac地址,IP,端口,四者并存可以找到世界上任意一台计算机对应的软件
      • TCP协议,UDP协议
      • 端口:0~65535端口号
        • 1~1023系统占用的端口号
        • 1024~8000之内:一般的是由软件占用
    • 应用层:软件自己定义的协议
  4. TCP的三次握手四次挥手

    • 三次握手
      • 当客户端请求与服务端建立通信连接,首先向服务器发送syn请求(1)。服务端向客户端发送 我接受到了你的连接请求 的同时,向客户端发送 我也要和你建立连接的请求(2)。当客户端接收到通信连接的请求后,向服务端发送我同意你的连接请求(3)。
    • 四次挥手
      • 当客户端请求与服务端端开通信连接,首先向服务端发送syn请求(1)。服务端在接受请求时,向客户端发送我同意断开连接(2),当数据传输完毕后,服务端向客户端发送,我要和你断开连接的请求(3)。客户端接收完毕后,向服务端发送我同意你的断开连接请求(4)。

    技术图片

  5. UDP与TCP

    • TCP:

      好人协议,不会拒绝别人

      syn洪水攻击:黑客会虚拟很多的假IP,访问你的服务器,半连接池,缓冲效果

      • 优点:好人协议,流式协议,稳定安全
      • 缺点:效率低
      • 应用:web浏览器,文件传输程序
    • UDP协议:

      • 优点:效率高,传输快
      • 缺点:不安全,不是面向连接的,不可靠
      • 应用:域名系统(DNS),视频流,IP语音(VoIp),微信,qq

以上是关于网络协议的主要内容,如果未能解决你的问题,请参考以下文章

网络协议

计算机网络-网络层-地址解析协议ARP

20TCP IP 网络协议基础入门--IP网际协议

常见网络协议汇总

:网络协议第18节:网络协议 - 入门(上)

计算机网络2--网络协议基础