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 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络 -> 正文阅读

[网络协议]计算机网络

计算机网络

概述

计算机网络功能

  • 资源共享、信息传递、提高可靠性、分布式处理、负债均衡

计算机网络功能组成部分

  • 资源子网

    • 应用层
    • 表示层
    • 会话层
  • 通信子网

    • 网络层
    • 数据链路层
    • 物理层

计算机网络分类

  • 分布范围分类

    • 广域网WAN
    • 城域网MAN
    • 局域网LAN
    • 个人区域网PAN
  • 传输技术分类

    • 广播式网络
    • 点对点网络
  • 交换技术分类

    • 电路交换

      • 独占资源
    • 报文交换

      • 存储转发
    • 分组交换

      • 存储转发
  • 拓扑结构分类

    • 星型网络

      • 便于集中控制和管理
      • 成本高、中心节点对故障敏感
    • 总线型网络

      • 建网容易、增删节点容易、节省线路
      • 重负载时通信效率不高、总线任意处对故障敏感
    • 环形网络

    • 网状网络

      • 可靠性高
      • 成本高、控制复杂
  • 使用者分类

    • 公用网
    • 专用网
  • 传输介质分类

    • 有限网络
    • 无限网络

计算机网络时延

  • 发送时延
  • 传播时延
  • 处理时延
  • 排队时延

体系结构

  • 协议组成

    • 语法

      • 规定传输数据格式
    • 语义

      • 规定要完成的功能
    • 同步

      • 规定执行各种操作的条件、时序关系
  • 协议是水平的,服务是垂直的

  • 服务分类

    • 面向连接服务和无连接服务

      • 面向连接服务

        • 可靠、双方必须先建立连接、阶段:连接建立-数据传输-连接释放
        • TCP协议
      • 无连接服务

        • 不可靠、不需要建立连接、直接发送数据
        • UDP协议
    • 可靠服务和不可靠服务

      • 可靠服务

        • 具有纠错、检错、应答机制,保证数据正确可靠传送到目的地
      • 不可靠服务

        • 网络尽可能正确,可靠的传送,不保证数据正确性,可靠性由用户保证
    • 有应答服务和无应答服务

      • 有应答服务

        • 接收方收到数据发出相应回答
      • 无应答服务

        • 接收方收到数据不会自动给出应答

参考模型

  • image-20220316095228344

  • OSI模型

    • 应用层

      • 任务:用户与网络界面,为特定网络类型的网络应用提供访问OSI环境的手段
      • 协议:FTP、SMTP、HTTP
    • 表示层

      • 任务:处理两个通信系统中交换信息的表示方式
      • 功能:数据压缩和恢复、数据加密解密、数据格式转换
      • 协议:JPEG、ASCII
    • 会话层

      • 任务:允许不同主机上的各个进程之间进行通话
      • 功能:建立会话同步、管理主机间的会话进程(建立、管理及终止)
      • 协议:ADSP、ASP
    • 传输层

      • 单位:TCP报文段或UDP数据报、任务:主机之间两个进程的相互通信
      • 功能:端到端传输、流量控制、差错控制、可靠不可靠传输、复用分用、传输管理
      • 协议:TCP、UDP
    • 网络层

      • 单位:数据报、任务:为分组交换网络上的不同主机提供通信服务
      • 功能:流量控制、拥塞控制、差错控制、网际互联
      • 协议:IP、IGMP、ICMP、ARP、RARP、OSPF
    • 数据链路层

      • 单位:帧、任务:封装成帧
      • 功能:差错控制、流量控制、访问(接入)控制
      • 协议:SDLC、HDLC、PPP、STP
    • 物理层

      • 单位:比特流、任务:透明传输
      • 功能:在物理媒体上为数据端设备透明的传输原始比特流
      • 协议:Rj45、802.3、EIA-232C
  • TCP/IP模型

    • 应用层

      • 包括OSI模型的会话层、表示层、应用层
      • 包括所有高层协议:FTP、HTTP、SMTP、DNS
    • 传输层

      • 对应OSI模型的传输层
      • 实现发送端和目的端主机上的对等实体会话
      • 协议:TCP、UDP
    • 网际层
      (网络层)

    • 对应OSI模型的网络层

    • 将分组发送到任何网络上并选择合适的路由、不能保证有序到达

    • 协议:IPV4、IPV6

    • 网络接口层

      • 对应OSI模型的数据链路层和物理层
      • 指出主机必须使用的某种协议与网络连接
      • 从主机或者节点接收IP分组,并把他们发送到指定的物理网络上
  • 两种模型比较

    • 相同

      • 都采用分层结构
      • 都基于独立的协议栈概念
      • 都可以解决异构网络互联
    • 不同

      • OSI精确定义了服务 接口和协议 TCP/IP没有明确区分

      • OSI通用性良好 TCP/IP是对已有协议的描述,但不适合与其他非TCP/IP的协议栈

      • 网络层

        • OSI中支持无连接和面向连接
        • TCP/IP只有无连接
      • 传输层

        • OSI直接面向连接通信
        • TCP/IP支持面向连接和无连接通信

物理层

通信

  • 通信方式

    • 单工通信
    • 半双工通信
    • 全双工通信
  • 串行、并行、同步、异步

  • 奈奎斯特定理和香农定理

    • 奈奎斯特定理

      • 宽带受限、无噪声
    • 香农定理

      • 宽带受限、有噪声
  • 编码与调制

    • 编码:数据变为数字信号的过程;调制:数据变为模拟信号的过程

    • 数字数据编码为数字信号

      • 归零编码

        • 高电平1,低电平0
      • 非归零编码

        • 低电平0,高电平1
        • 容易实现、无法使得双方同步、没有检错功能
      • 曼彻斯特编码

        • 由高到低1,由低到高0
        • 尽可能双方同步、占用频道宽度是原始基带宽度的两倍
      • 差分曼彻斯特编码

        • 前半个码元和前一个码元的后半个码元相同为1,否则为0
        • 可以实现自同步、抗干扰性好
    • 数字数据调制为模拟信号

      • 幅移键控(调幅)

        • 改变载波信号的振幅表示0和1
        • 较容易实现、抗干扰能力强
      • 频移键控(调频)

        • 改变载波信号分频率表示0和1
        • 较容易实现、抗干扰能力强、应用广泛
      • 相移键控(调相)

        • 改变载波信号的相位表示0和1
      • 正交振幅调制(调幅+调相)

    • 模拟数据编码为数字信号

      • 采样
      • 量化
      • 编码
    • 模拟数据编码为模拟信号

      • 频分复用(FDM)
      • 需要较高的频率
  • 电路交换

    • 直通式传输数据、独占信道资源

    • 三个阶段

      • 连接建立、数据传输、连接释放
    • 优点

      • 通信时延小
      • 有序传输
      • 没有冲突
      • 适用范围广
      • 实时性强
      • 控制简单
    • 缺点

      • 建立连接时间长
      • 线路独占
      • 灵活性差
      • 难以规格化
      • 无数据存储能力
  • 报文交换

    • 存储转发方式、单位是报文、无需在站点间建立一条通路

    • 优点

      • 无需建立连接
      • 动态分配线路
      • 提高线路可靠性
      • 提高线路利用率
      • 提供多目标服务
    • 缺点

      • 存在转发时延(接收报文、检验正确性、排队、发送时延等)
      • 报文没有限制,需要较大的缓存空间,只适用于数字信号
  • 分组交换

    • 存储转发方式、数据块大小有限制

    • 优点

      • 没有建立时延
      • 线路利用率高
      • 简化存储管理(相对于报文交换)
      • 加速传输
      • 减少了出错概率和重发数据量
    • 缺点

      • 存在传输时延
      • 需要额外信息量
      • 有失序问题
    • 数据报方式

      • 提供无连接服务
      • 每个分组有完整目的地址、独立的进行路由选择和转发
      • 不保证有序到达和可靠通信
      • 故障节点丢失不干扰其他分组传输
      • 用户主机可进行流量控制
      • 适用于突发性通信、不适用于长报文和会话通信
      • 对故障适应性较强、网络发生堵塞时可看情况丢弃一些分组
    • 虚电路方式

      • 必须建立连接
      • 属于同一条的虚电路的分组按照同一个路由转发
      • 保证分组有序到达
      • 故障节点的虚电路不能正常工作

传输

  • 传输介质

    • 导向型传输介质

      • 双绞线

        • 便宜、使用范围广
        • 使用于局域网、传统电话网
        • 传输距离:几千米到数十千米
      • 同轴电缆

        • 抗干扰性好、广泛用于较高速率的数据、传输距离远
        • 价格较贵
      • 光纤

        • 单模、多模
        • 损耗小、远距离传输、抗干扰好、体积小、保密性强
    • 非导向型传输介质

      • 无限电波
      • 微波、红外线、激光
      • 卫星通信
  • 物理接口特性

    • 机械特性

      • 连接规格、引线数目、引脚数量、排列情况
    • 电气特性

      • 线路上的电压高低、传输速率、距离限制
    • 功能特性

      • 信号线的用途
    • 规程特性

      • 工作规程和时序
    • 接口规范

物理层设备

  • 中继器

    • 信号再生、信号还原
    • 廉价、扩大网络规模简单
    • 不能连接不同速率的局域网、中继器出故障相邻两个网段都受影响
  • 集线器

    • 再生、放大信号、转发
    • 扩大网络传输范围
    • 不具有定向传送能力、只能在半双工下使用、不能分割冲突域、多台主机使用效率低

数据链路层

功能

  • 在物理层提供服务的基础上向网络层提供服务、加强物理层传输原始比特流的功能

  • 为网络层提供服务

    • 无确认的无连接服务

      • 发送数据帧不需要建立链路连接,目的机器收到帧不需要发回确认
      • 对丢失的帧,链路层不负责,交给网络层处理
      • 适用于以太网
    • 有确认的无连接服务

      • 发送数据帧不需要建立链路连接,目的机器收到帧必须发回确认
      • 源机在规定时间内没收到确认,重传
      • 适用于无线通信
    • 有确认的面向连接服务

      • 三个阶段:建立数据链路、传输帧、释放数据链路
      • 目的机对收到每一帧都要确认,源机收到确认后才发下一帧
  • 帧定界、帧同步、透明传输

  • 流量控制

    • 控制发送方的发送速度

    • 数据链路层:接收方收不下就不回复确认

    • 传输层:接收端给发送端一个窗口公告

    • 流量控制与可靠传输

      • 流量控制

        • 停止-等待协议

          • 发送窗口大小=1,接收窗口大小=1
          • 发送一帧就等确认,简单、信道利用率低
        • 滑动窗口协议

          • 后退N帧协议(GBN)

            • 发送窗口大小>1,接收窗口大小=1
            • 累计确认、超过计时器重传、接收方只按序确认不按序丢弃、发送窗口最大2的n次方减一
          • 选择重传协议(SR)

            • 发送窗口大小>1,接收窗口大小>1
            • 接收方有缓存、超过计时器重传、只重传错误的帧、逐一确认收一个确认一个、可累计确认
      • 可靠传输

        • 使用确认和超时重传机制
  • 差错控制

    • 影响因素:噪声干扰

    • 两种错误

      • 位错

        • 解决方法:CRC循环冗余码
      • 帧错

        • 解决方法:自动重传请求(ARQ)
    • 利用编码技术进行差错控制

      • 自动重传请求(ARQ)

        • 接收端出现差错时通知发送端重发
      • 前向纠错(FEC)

        • 接收端能发现错误并且还能确定错误位置进行纠错
    • 检错编码

      • 奇偶校验码
      • 循环冗余码
    • 纠错编码

      • 海明码

        • 发现错误、找到位置、纠正错误
  • 组帧

    • 字符计数法

      • 在帧头部使用一个计数字段来标明帧内字符数
    • 字符填充的首尾定界字符法

      • 使用一些特定的字符来定界一帧的开始与结束
    • 零比特填充的首尾标志法

      • 使用01111110来标志帧的开始与结束,遇到5个连续的1就添加一个0
    • 违规编码法

      • 在曼彻斯特编码中使用高-高,低-低来定帧的开始和结束

介质访问控制

  • 静态划分信道

    • 信道划分介质访问控制

      • 频分多路复用FDM

        • 将信号调制成不同频率叠加形成一个复合信号
      • 时分多路复用TDM

        • 将时间分为一段段等长时分复用帧,每个帧在一个时隙使用该信道
      • 波分多路复用WDM

        • 将多个信道用合波器聚合成一条信道上传输,然后在用分波器进行信号划分
      • 码分多路复用CDM

        • 采用不同的编码来区分各路原始信号的复用方式
  • 动态分配信道

    • 随机访问介质访问控制

      • ALOHA协议
        (不听不说)

        • 纯ALOHA协议

          • 不监听信道,不按时间槽发送,随机重发,想发就发
          • 冲突后等一随机时间在重传
        • 时隙ALOHA协议

          • 把时间分成若干相同时间片,所有用户在时间片开始时同步接入网络信道。若发生冲突,必须等待下一个时间片开始时刻在发送。控制想发就发的随意性。
      • CSMA协议
        (先听再说)

        • 载波监听多路访问协议

        • 1-坚持CSMA

          • 空闲:马上发
          • 忙:继续坚持监听
        • 非坚持CSMA

          • 空闲:马上发
          • 忙:放弃监听,等待一个随机时间在监听
        • p-坚持CSMA

          • 空闲:p概率马上发,1-p概率等到下一个时间间隙在发送
          • 忙:持续监听,直到信道空闲再以p的概率发送
      •    CSMA/CD协议
        

    (先听再说,边听边说)

      	- 载波监听多点接入/碰撞监测
      	- 二进制指数退避算法解决碰撞
      	- 适用于总线型网络或者半双工网络
      	- 发送数据时先广播通知其他节点,让其他节点在某段时间内不要发送数据,以免出现碰撞
    
      - CSMA/CA协议
    
      	- 载波监听多点接入/碰撞避免
      	- 二进制指数退避算法解决碰撞
      	- 适用于有线连接的局域网(无限局域网)
      	- 发送前侦听,边发送边侦听,一旦出现碰撞马上停止发送
    
    • 轮询访问介质访问控制

      • 令牌传递协议

        • 适用于星型拓扑和环形拓扑

        • 通过一个集中控制的监控站,以循环的方式轮询每个节点,在决定信道的分配,拿到令牌就可以发送数据

        • 问题

          • 令牌开销
          • 等待延迟
          • 单点故障
        • 适用于负载很高的广播信道

局域网

  • 覆盖范围小,多点接入,在物理层和数据链路层,强调数据传输

  • 局域网特性由三个要素决定

    • 拓扑结构

      • 星型、环形、总线型
    • 传输介质

      • 双绞线、同轴电缆、光纤
    • 介质访问控制

      • CSMA/CD、令牌总线、令牌环
  • 划分

    • 逻辑链路控制层LLC

      • 为上层网络层提供服务
    • 介质访问控制层MAC

      • 为下层物理层提供服务
  • 高速以太网

    • 100BASE-T以太网
    • 吉比特以太网
    • 10吉比特以太网

广域网

  • 覆盖范围广,点到点连接,在物理层和数据链路层和网络层,强调资源共享

  • 广域网由节点交换机(将分组存储转发)以及连接这些交换机的链路组成

  • PPP协议(点对点协议)

    • 简单、封装成帧、透明传输、多种路由协议、差错控制(只检错不纠错)、面向字节、属于不可靠传输协议

    • 通过拨号或专线方式建立连接发送数据,只支持全双工链路

    • 组成部分

      • 链路控制协议LCP

        • 一种扩展链路控制协议,用于建立、配置、测试和管理数据链路(如身份验证功能)
      • 网络控制协议NCP

        • 允许同时采用多种网络层协议,每个不同网络协议要用一个相应的NCP来配置,为网络层协议建立和配置逻辑连接
  • HDLC协议

    • 数据报文可透明传输、全双工通信(有较高的数据链路传输效率)、传输控制功能与处理功能分离、所有帧采用CRC检验

    • 配置方式

      • 非平衡配置

        • 由一个主站控制整个链路的工作
      • 平衡配置

        • 链路两端的两个站都是复合站,每个复合站都可以平等的发起数据传输,而不需要得到对方复合站的允许
    • 站类型

      • 主站

        • 负责控制链路
      • 从站

        • 受控于主站,按主站命令操作,发出的帧称相应帧
      • 复合站

        • 可以发出命令帧和相应帧
    • 数据操作方式

      • 常相应方式

        • 主站向从站发送数据,从站相应传输,但从站只有在收到主站许可后,才可以进行响应
      • 异步平衡方式

        • 每个复合站都可以对另一站的数据传输
      • 异步相应方式

        • 从站没有接收到主站许可,也可以进行传输
    • HDLC帧

      • 信息帧D

        • 第一位为0,用来传输数据信息,或使用捎带技术对数据进行确认
      • 监督帧S

        • 第一二位分别为1和0,用于流量控制和差错控制,执行信息帧的确认、请求重发和请求暂停发送功能
      • 无编号帧U

        • 第一二位均为L用于提供对链路的建立、拆除等多种控制功能

链路层设备

  • 网桥

    • 工作在链路层的MAC子层,能隔离冲突域,不能隔离广播域
    • 具备寻址和路径选择能力、可以在不同或者相同的LAN之间存储转发帧、只对帧进行封装不修改、有足够大的缓存空间
    • 可互联不同类型的局域网、能过滤通信量
  • 交换机

    • 其实是一个多端口的网桥,能将网络分成小的冲突域

    • 工作在全双工链路,自学习算法建立路由表、独占媒体宽带,碰撞的传输数据

    • 两种方式

      • 直通式交换机

        • 只检查目的地址,数据帧马上发出去(速度快)
      • 存储转发式交换机

        • 接收到帧先缓存并检查数据是否正确(正确就发送,错误就丢弃)、可靠性高、延迟大

路径选择算法

  • 透明网桥

    • 选择不是最佳路由
    • 建立转发表,自学习算法处理帧
  • 源路由网桥

    • 选择最佳路由
    • 路由选择由发送数据帧的源站负责,网桥只根据数据真正的路由信息对帧进行接收和转发
    • 广播方式向目的站发送一个发现帧进行探测,根据经过节点生成最佳路径

网络层

功能

  • 异构网络互联

  • 路由转发

    • 路由选择

      • 确定那一条路径
      • 构造路由表,不断和相邻路由器交换信息更新路由表,根据整个网络拓扑情况动态选择路由
    • 分组转发

      • 当一个分组到达时所采取的动作
      • 根据转发表将用户数据报从合适端口转发出去
  • 拥塞控制

    • 合理优化主机、路由器以及路由器内部转发处理过程

    • 拥塞控制必须确保通信子网能够传送待传送的数据,全局性的一个问题;流量控制是抑制发送端发送数据的速率

    • 方法

      • 开环控制
      • 闭环控制

路由算法

  • 静态路由与动态路由

    •    静态路由算法
      

(非自适应路由算法)

	- 手工配置路由信息
	- 简单、可靠、在稳定拓扑不大网络运行较好
	- 大型网络不适用、难以了解全面拓扑结构、发生变化需要大规模修改路由

-      动态路由算法
(自适应路由算法)

	- 路由器之间彼此交换信息,按一定的比例算法优化出来的表项
	- 更新快、大型网络、及时相应网络拓扑变化、有助于流量控制
	- 算法复杂会增加网络负担
  • 动态路由算法

    • 距离-向量路由算法

      • 所有节点定期将他们路由选择表发送给所有直接相邻的节点
      • RIP算法
    • 链路状态路由算法

      • 要求每个参与该算法的节点都具有完全的网络拓扑、主动测试所有邻接节点的状态、定期将链路状态广播给其他节点
      • OSPF算法
  • 路由选择协议

    • 内部网关协议IGP
      (自治系统内)

      •       RIP
        

      (路由信息协议)

        - 好消息传得快,坏消息传的慢
        - 简单、开销小、在相邻路由器间交换、最多允许15跳超过即不可达、定时刷新路由表、子网掩码必须相同
        - 限制了网络的规模(最大15跳)、开销大、网络出故障需要较长时间才能将信息传送到所有路由器
      
      •          OSPF
        

      (开放最短路径优先)

        - 向本自治系统中所有路由器发送信息(广播),链路状态变化进行广播向所有路由器发送信息,直接使用IP数据报进行发送
        - 灵活、使用Dijkstra算法(最短路径算法)、支持可变长子网划分和无分类编址CIDR、采用广播
      
    • 外部网关协议EGP
      (不同自治系统内)

      •       BGP
        

        (边界网关协议)

        • 不同自治系统的路由器之间交换路由信息的协议,是一种外部网关协议

        • 常用于互联网的网关之间、应用层协议基于TCP、采用路径向量路由选择协议

        • 选择一个BGP发言人与其他自治系统中的BGP发言人要交换路由信息,先建立TCP

        • 报文类型

          • 打开(Open)报文

            • 认证发送方
          • 更新(Update)报文

            • 通告新路径或撤销源路径
          • 保活(Keepalive)报文

            • 打开报文周期性证实临站关系
          • 通知(Notification)报文

            • 用来发送检测到的差错

IPV4

  • 数据报格式

    • image-20220316095312569

      • image-20220316095321713
  • 地址分类

    • A类(1-126)
    • B类(128-191)
    • C类(192-223)
    • D类(224-239)
    • E类(240-255)
  • 网络地址转换(NAT)

    • 本地主机和外界通信时,NAT转换表将本地地址转换为全球地址,或将全球地址转换成本地地址
  • 子网划分

    • 将两级IP地址变成三级IP地址
    • IP地址={(网络号),(子网号),(主机号)}
  • 子网掩码

    • 表示对网络中主机号的借位

    • 分类

      • A类:255.0.0.0
      • B类:255.255.0.0
      • C类:255.255.255.0
  • 无分类编址CIDR

    • 消除A、B、C类网络划分,将网络前缀相同的连续IP地址组成CIDR地址块,格式:192.168.25.14/20
  • 地址解析协议ARP

    • 实现IP地址到MAC地址的映射,解决下一调走哪问题
  • 动态主机配置协议DHCP

    • 用于给主机动态分配IP地址(即插即用),应用层协议基于UDP,广播方式进行交互
  • 网际控制报文协议ICMP

    • 让主机或路由器报告差错和异常情况

    • 种类

      • ICMP差错报告报文

        • 终点不可达

          • 无法交付
        • 源点抑制

          • 拥塞丢数据
        • 时间超过

          • TTL=0
        • 参数问题

          • 首部字段有问题
        • 改变路由(重定向)

          • 有更好的路由
      • ICMP询问报文

        • 回送请求和回答报文

          • 测试目的站是否可达以及了解其相关状态
        • 时间戳请求和回答报文

          • 用来进行时钟同步和测量时间
        • 掩码地址请求和回答报文

        • 路由器询问和通告报文

IPV6

  • image-20220316095331304

  • 解决地址耗尽的最根本方法,缓解方法:超网聚合NAT等

  • 特点

    • 地址空间增大到128位(IPV4是32位)
    • 首部灵活、允许协议扩充、自动配置、只能在主机处分片
  • IPV4向IPV6过渡技术

    • 双协议栈

      • 一台设备上同时拥有两种协议栈
    • 隧道技术

      • 将整个IPV6数据报封装到IPV4数据报部分进行传输

IP数据报的三种传输方式

  • 单播

    • 点对点
  • 多播

    • 点对多点
  • 组播

    • 点对多点

网络层设备

  • 路由器

    • 隔离冲突域、隔离广播域

    • 连接不同网络(异构网络)完成路由转发,面向协议

    • 功能

      • 路由选择

        • 根据路由协议构造路由表,和其他相邻路由器交换路由信息后更新和维护路由表
      • 分组转发

        • 根据分组转发表对分组进行处理,选择一个合适的输出端口转发出去
    • 支持协议

      • OSI、TCP/IP、IPX

传输层

为应用层提供通信服务,使用网络层的服务

功能

  • 提供应用进程间的逻辑通信(端到端通信)

  • 复用

    • 发送方不同的应用进程都可以使用同一个传输层协议进行传送数据
  • 分用

    • 接收方的传输层在剥去报文首部信息后能够把这些数据正确交付给应用进程
  • 差错控制(首部和数据部分)

  • 提供两种传输协议

    • TCP、UDP

寻址与端口

  • 端口作用

    • 标识主机中的应用进程、只有本地意义

面向连接服务和无连接服务

  • 面向连接服务
    (TCP)

    • image-20220316095405900

    • 通信之前先建立连接,通信结束应释放连接、全双工通信、可靠、有序、无丢失、不重复

    • 增加了开销(如确认、流量控制、计时器等)、适用于可靠传输(如FTP、HTTP、TELNET)

    • 三次握手

      • 客户端发送连接请求,发送 SYN包(syn=j)到服务器,等待服务器确认,进入SYN-SEND状态。
      • 服务器收到SYN包,为TCP连接分配缓存和变量,必须确认客户的SYN(ack=j+1),同时自己也发送一 个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态。
      • 客户端收到服务器的SYN+ACK包,为TCP连接分配缓存和变量,向服务器发送确认包ACK(ack=k+1), 此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
    • 四次握手

      • 客户端发送连接释放FIN字段(FIN=j),并停止发送数据,主动关闭TCP连接,进入关闭等待状态。
      • 服务器收到连接释放报文段后,确认客户发来的FIN(ack=j+1),同时发送自己的ACK,此时处于半关闭状态。
      • 服务器发完数据,发出连接释放FIN报文(FIN=k),主动关闭报文段,同时也确认用户发来的FIN(ack=j+1)。
      • 客户端收到服务器的结束字段,回送一个确认报文段ACK(ack=k+1),在等到时间等待计时器设置的2MSL后,彻底关闭连接。
    • 可靠传输

      • 校验

        • 增加伪首部进行校验
      • 序号

        • 保证数据有序的提交给应用层
      • 确认

        • 累计确认、期望收到对方的下一个报文的第一个字节序号
      • 重传

        • 超时

          • 规定时间内没收到确认,需要重传这一报文段
        • 冗余ACK

          • 重复收到报文的ACK,可以认为该报文丢失,马上进行重传这一报文段
    • 流量控制

      • 滑动窗口协议进行控制
      • 一对一,控制发送速率
      • 控制发送端发送的速率,以便接收端来得及接收
      • 接收方根据接收的缓存大小动态调整发送窗口大小;发送方根据网络拥塞状况确定窗口值
    • 拥塞控制

      • 使网络承受现有的网络负荷,防止过多数据注入网络,保证网络中数据不过载

      • 多对一,防止过多数据进入网络

      • 实现机制

        • 慢开始-拥塞避免
        • 快重传-快恢复
  • 无连接服务
    (UDP)

    • image-20220316095417120
    • 不需要先建立好连接,需要通信时,直接将数据发送到网络
    • 只提供多路复用和错误检查、主机收到报文不需要给出确认、简单、速度快、实时性好、面向报文
    • 常见应用(TFTP、DNS、SNMP、RTP)

应用层

网络应用模型

  • C/S模型

  • P2P模型
    (对等模型)

  • 即是客户端也是主机

  • 扩展性好、网络健壮性强、减轻服务器计算压力提高了系统效率和资源利用率

  • 占用较多内存、P2P下载会对硬盘损伤、是网络变得拥堵

域名系统

  • 将含有特定含义的主机名转换成便于机器处理的IP地址

  • 域名服务器

    • 根域名服务器
    • 顶级域名服务器
    • 授权域名服务器
    • 本地域名服务器
  • 解析过程

    • 正向解析

      • 把域名映射成IP地址
    • 反向解析

      • 将IP地址映射成域名
    • 查询方式

      • 递归查询
      • 递归与迭代相结合的查询

文件传输协议FTP

  • 适用于异构网络中的任意计算机之间传送文件
  • 采用C/S结构工作方式,使用TCP可靠传输服务
  • FTP服务器必须在整个会话期间保留用户的状态信息
  • 数据连接端口20、控制连接端口21

电子邮件

  • image-20220316095430466

    • image-20220316095437073

万维网WWW

  • 统一资源定位符URL

    • image-20220316095444438
  • 超文本传输协议HTTP

    • 无状态、采用TCP作为运输层协议、既可以使用非持久连接也可以使用持久连接、面向文本

    • 持久连接

      • 服务器在相应后仍然保持这条连接,使同一个客户端和服务器可以继续进行通信
    • 非持久连接

      • 指每个网页元素对象的传输都需要单独建立一个TCP连接
    • 请求类型

      • GET、POST
  • 超文本标记语言HTML

其他

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-17 22:35:21  更:2022-03-17 22:37:14 
 
开发: 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年11日历 -2024/11/26 5:51:21-

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