IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络 -> 正文阅读

[网络协议]计算机网络

网络

计算机网络

概述

  • 计算机网络体系结构

    • OSI
    • 五层协议
    • TCP/IP

物理层

数据链路层

  • 实现具体每段链路之间的通信,主机和主机之间有不同的链路

  • 基本问题

    • 封装成帧

    • 差错检测

      • 循环冗余检验(CRC)检查比特差错
  • MAC地址

    • 长度6字节用于唯一标识网络适配器(网卡)
  • 交换机

    • 交换表中存储着MAC地址到接口的映射

网络层

  • 概述

    • 使用IP协议

      • 实现主机之间的通信
  • IP数据报格式

    • 首部
    • 数据部分
  • IP地址编址方式

    • 分类

      • 网络号
      • 主机号
    • 子网划分

      • 255.255.0.0
      • 255.255.192.0
    • 无分类

      • 网络前缀
      • 主机号
  • 地址解析协议ARP

    • 作用

      • 实现由IP地址得到MAC地址
    • 工作原理

      • 主机A广播发送ARP请求分组
      • 主机B向A发送ARP响应分组
  • 网际控制报文协议ICMP

    • 作用

      • 更有效的转发IP数据报和提高交付成功的机会,它封装在IP数据报中,但不属于高层协议
    • ICMP报文类型

      • 差错报告报文
      • 询问报文
    • 应用

      • Ping

        • 主要测试两台主机之间的连通性

        • 原理

          • 向目的主机发送ICMP Echo请求报文,目的主机收到之后会发送Echo回答报文,Ping根据时间和成功响应的次数估算出数据包往返时间和丢包率
      • Traceroute

        • 跟踪一个分组从源点到终点的路径
  • 虚拟专用网VPN

  • 网络地址转换NAT

  • 路由器

    • 结构

      • 路由选择

      • 分组转发

        • 交换结构
        • 一组输入端口
        • 一组输出端口
    • 分组转发流程

    • 路由选择协议(自适应)

      • 自治系统内部的路由选择

        • 内部网关协议RIP

          • 距离向量
        • 内部网关协议OSPF

      • 自治系统间的内部选择

        • 外部网关协议BGP

传输层

  • 提供进程间的逻辑通信

    • 端到端的逻辑通信
  • UDP

    • 特点

      • 面向无连接
      • 支持单播,广播,多播功能
      • 面向报文
      • 不可靠传输
      • 头部开销小,传输数据报文时是很高效
      • 即时通信
    • 首部格式

      • 8字节 源端口,目的端口,长度,检验和
  • TCP

    • 特点

      • 面向连接
      • 仅支持单播传输
      • 面向字节流传输
      • 可靠传输
      • 提供拥塞控制
      • 提供全双工通信
      • 适用于要求可靠性传输的应用,例如文件传输
    • 首部格式

      • 序号,确认号,数据偏移,确认ACK,同步SYN,终止FIN,窗口
    • 三次握手

      • 第一次握手

        • 客户端向服务端发送连接请求报文段,该报文段包含自身的数据通讯初始序号.请求发送后,客户端进入SYN- SENT状态
      • 第二次握手

        • 服务端收到连接请求报文段后,如果同意连接,则发送一个应答,该应答也包含自身的数据通讯初始序号.发送完后便进入到SYN- RECEIVED状态
      • 第三次握手

        • 当客户端收到连接同意的应答后,还要向服务端发送一个确认报文,客户端发送完这个报文段后,便进入到ESTABLISHED状态,服务端收到这个应答后也进入到ESTABLISHED状态,此时建立连接成功
      • 原因

        • 防止失效的连接请求到达服务器,让服务器错误打开连接
    • 四次挥手

      • 全双工,在断开连接时,两端都需要发送FIN和ACK

      • 第一次挥手

        • 客户端认为数据发送完毕,向服务端发送连接释放请求
      • 第二次挥手

        • 服务端收到请求后,告诉应用层释放TCP连接,然后发送ACK包,并进入CLOSED- WAIT状态,说明客户端到服务端的连接已释放,不再接受客户端发送的数据
      • 第三次挥手

        • 当服务端不再需要连接时,发送连接释放请求,进入LAST- ACK状态
      • 第四次挥手

        • 客户端收到请求后,发出确认,进入TIME- WAIT状态,等待2MSL(最大报文存活时间)后释放连接,服务端收到确认后释放连接

          • TIME- WAIT(2MSL)

            • 确认最后一个报文能够到达
            • 让本连接持续时间内所产生的所有报文都从网络中取消
      • 四次挥手原因

        • 客户端发送FIN连接释放报文后,服务器收到这个报文后,进入CLOSED- WAIT状态,这个状态是为了让服务端发送还未传送完毕的数据,传送完毕后,服务端会发送FIN连接释放报文
    • 可靠传输

      • 超时重传
    • 滑动窗口

      • 缓存的一部分,用来暂时存放字节流,接收方和发送方各有一个窗口,接收方通过TCP报文段中的窗口字段告诉发送方自己窗口的大小,发送方根据这个值和其他信息设置自己窗口的大小
    • 流量控制

      • 控制发送方的发送速率,保证接收方来得及接收
      • 接收方发送的确认报文字段可以用来控制发送方窗口的大小,从而影响发送方的发送速率
    • 拥塞控制

      • 控制发送方的速率,和流量控制很像,但是出发点不同,流量控制是为了让接收方来得及接收,拥塞控制是为了降低整个网络的拥塞程度

应用层

  • 域名系统DNS Domain Name System

    • 分布式数据库 提供主机名和IP地址相互转换

    • 域名

      • 根域名
      • 顶级域名
      • 二级域名
    • UDP或者TCP传输 端口号53

      • 大多数使用UDP传输,要求域名解析器和域名服务器都必须自己处理超时和重传从而保证可靠性
      • TCP
  • 文件传输协议FTP File Transfer Protocol

    • TCP连接

      • 控制连接

        • 服务器打开端口号21等待客户端的连接
      • 数据连接

        • 用来传送一个文件数据
    • 两种模式(根据数据连接是否是服务器主动连接)

      • 主动模式

        • 服务器主动建立数据连接,服务器端口号20,客户端端口号随机,但必须大于1024,0~1023是熟知端口号
      • 被动模式

  • 动态主机配置协议

  • 远程登录协议

  • 电子邮件协议

  • 常用端口

  • Web页面请求过程

HTTP

基础概念

  • URI

  • Http报文

    • 结构

      • 起始行
      • 头部
      • 主体
    • 分类

      • 请求报文

        • 起始行

          • 请求的方法
          • 请求的URL
          • 协议类型及版本
      • 响应报文

        • 起始行

          • 协议类型及版本号
          • 状态码
          • 状态文字说明

Http方法(请求报文)

  • GET

    • 安全,幂等,可缓存
  • POST

    • 不安全,不幂等,大多数不可缓存
  • HEAD

    • 安全,幂等,可缓存
  • PUT

    • 不安全,幂等,不可缓存
  • PATCH

  • DELETE

    • 不安全,幂等,不可缓存
  • OPTION

  • TRACE

Http状态码(响应报文)

  • 1XX

Http首部

具体应用

Https

  • 不是新协议

    • HTTP先和SSL通信,再由SSL和TCP通信
    • SSL:secure socjets layer 安全套接层
  • 加密

  • 认证

  • 完整性保护

  • 缺点

    • 速度慢
    • 证实授权费用高

Http/2.0

Http/1.1新特性

Get和Post比较

  • 作用

  • 参数

  • 安全

    • 不改变服务器状态
  • 幂等性

    • 同样的请求被执行一次或多次的效果是一样的,服务器的状态也是一样的
  • 可缓存

Socket

主机IP1

路由器R1

  • 路由器R2

    • 主机IP2
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-12 19:57:15  更:2021-11-12 19:59:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年7日历 -2024/7/3 9:18:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码