计算机网络学习笔记

第1课 绪论、传输介质

【知识点回顾】

  • 两种导线可以减小电磁干扰:
    • 双绞线(分为非屏蔽双绞线屏蔽双绞线)(RJ-45用)
    • 同轴电缆(短距离使用)
  • 网络通信的基本单位:位(bit)
  • 内存存储的基本单位:字节(byte)
  • 信号是信息的载体,信道是信号的传输媒介,信道噪声是噪声和干扰的总称
  • 光纤的优缺点:
    • 优点:免受电气噪声干扰,信号损耗小高带宽保密性好,体积小,中继距离长
    • 缺点:费用高,需要专门人员与设备,易折断

第2课 局域异步通信

【知识点回顾】

  • 同步通信:先用同步字符同步,然后逐位收发,空数据要填充
  • 异步通信:开始结束都加标志,接收方时刻监听信道
  • 同步串行传输类型适合于视频传输异步串行传输适合于计算机键盘连接

  • 内存存储以低地址为端,网络通信以零时刻为端。
  • 串行异步通信标准RS-232
    • RS-232 DB9使用的是全双工传输
    • 电气特征:连线长度小于50ft,[3V, 15V]表示0,[-15V, -3V]表示1(空闲期为负电压,开始位0,结束位1)。
    • 帧格式按照位小端序,也就是按位写的话要倒过来
      • 7位为1个发送单元,再加上1个开始位至少1个结束位
  • 信号带宽
    • 传统定义:某个信号具有的频带宽度
    • 新定义:该信号的各种不同频率成分所占据的频率范围
    • 数字信道的带宽:在信道上能够传送的数字信号的速率
    • 波特率:单位为bps(二进制环境下)
  • 两大定理
    • 奈奎斯特定理:硬件带宽与理论最大数据发送速率间关系

D = 2Blog_2k (bps)

    • 香农定理:引入噪声的传输系统可以达到的最大数据速率

C = Blog_2(1+\frac{S}{N}), 信噪比为10lg(\frac{S}{N})

第3课 远程通信

【知识点回顾】

  • 载波:远距离通信系统发送连续震荡的信号
    • 通常是正弦波,可在频率、幅度或相位被调制来传输
    • 即便没有信号被发送,载波仍持续震荡
  • 调制:使载波的某些特性按信息的波形或信号而变化的处理方法。
    • 解调制:根据频带信号恢复出调制信号(载波信号丢弃)
    • 载波信号是模拟信号,调制信号是数字信号
    • 调制解调器(Modem):双工设备
  • 复用:指多个信源的信息流组合在一条共享介质上传播。
    • 解复用:将信息流组合分隔回分开的信息流
    • 复用的基本形式
      • 频分多路复用FDM:划分为不同频带的子信道,每个子信道可以并行
      • 波分多路复用WDM:FDM的光形式
      • 时分多路复用TDM:分为同步时分多路复用和统计时分多路复用
      • 码分多路复用CDM:划分为码片,码片序列必须互相正交

第4课 差错控制

【知识点回顾】

  • 传输差错(Transmission Errors):所有通信系统都容易犯错
    • 原因:物理特性;未达到工业标准
    • 分类:干扰(Intererence)、失真(Distortion)、衰减(Attenuation)
    • 错误检测增加开销,错误处理是一个权衡
    • 克服信道错误的两种方法:
      • 冗余可用于纠错
      • 信道编码是可用于克服传输错误的数学方法
  • 简单的校验方法
    • 关于块错误码
      • (n, k) 码,数据字k位,校验码r位,n=k+r,度量的好坏是码率 R=k/n
    • 奇偶校验(parity check)(可检测错误的信道编码中的一种弱形式)
      • 只能检测部分错误,不能纠正错误
    • Internet校验和(Internet checksum)
      • 每16位作为一个整数计算总和,结果大于16位重复上述过程
  • 循环冗余校验码(CRC)
    • Cyclic Redundancy Codes一种根据网络数据包或文件等数据产生简短固定位数校验码的散列函数,主要用来检测或校验数据传输或者保存后可能出现的错误。

第5课 局域网分组与编址

【知识点回顾】

  • 分组:网络系统将数据分为小的分块(分组),独立发送。
    • 分组交换(统计时分复用)信道利用率高,电路交换独立信道实时性高
  • :用于具体网络类型的分组,在分组交换网络中,每个帧对应一个分组。
    • 头部:包含元数据,消息不透明
    • 载荷:包含发送的数据,包含只对发送者和接受者有意义的字节序列
  • 编址:分组解复用
    • 分层处理:
      • 网卡:检测帧是否存在,有效性检验,判断是否接受
      • CPU:判断是否传给上层处理
      • 目的是减少CPU的负荷
  • 以太网的帧格式

第6课 以太网、拓扑与无线网技术

【知识点回顾】

  • 拓扑
    • 网状拓扑(Mesh):点对点通信,安全稳定但成本高,常用于远距离通信
    • 星型拓扑(Star):中心节点与其他点对点,容易增加新节点,但中心坏整个瘫痪
    • 环形拓扑(Ring):邻接点到点,易监控易安装,难增新节点,一个异常影响其他
    • 总线型拓扑(Bus):所有点共享信道,不如星增加新节点易,介质故障全网瘫痪
  • 以太网
    • 使用总线型,形成星型,使用曼彻斯特编码,直方波
    • 下降沿表示0,上升沿表示1
    • 不传递信息帧时,以太网没有电信号,传统以太网10Mbps
    • 不可靠的尽力而为的交付
    • 工作机制:
      • 争用型的介质访问控制协议——带冲突检测的载波监听多路访问技术(CSMA/CD)
        • 载波侦听:先听后发
        • 冲突检测:边发边听,冲突停发,两边都失效,用\tau表示端对端往返时延
        • 二进制指数退避:随机延迟后重发,基本退避时间d,n次冲突随机延迟(0,2^{n-1}]d
    • 强化碰撞:发现碰撞立刻停止发送,再发送若干人为干扰信号
  • 其他网络
    • LocalTalk:总线型,应用CSMA/CD
    • IBM令牌环:环形,应用令牌传递网络
    • 光纤分布数据互连(FDDI):环形,双向令牌环
    • 异步传输模式(ATM):星型,利用交换技术,面向连接,无冲突,速度快性能好

第7课 局域网的布线、拓扑、接口硬件

【知识点回顾】

  • 网络布线
    • 以太网的三种重要布线
      • 原始粗缆以太网布线(10Base5)——总线拓扑
      • 细缆以太网布线(10Base2)——总线拓扑
      • 双绞线以太网(10Base-T)——星型拓扑
        • T568B颜色顺序:白橙、橙、白绿、蓝、白蓝、绿、白棕、棕
      • 光纤以太网(10Base-F)
  • 中继器(Repeaters)
    • 工作在物理层,不理解帧格式,也没有物理地址
    • 主要功能:通过对数据信号的重新发送或者转发,来扩大网络传输的距离
    • 网络设计的“五四三二一”原则
      • 5个网段
      • 4个中继器
      • 3个网段可以连接计算机
      • 2个网段只能用于扩展局域网距离
      • 它们共同处于1个广播域
  • 集线器(Hub)
    • 半双工,物理层,可以连成更大的局域网,但都在一个碰撞域中
    • 优点:可跨碰撞域通信(跨原来的);扩大了局域网地理范围
    • 缺点:吞吐量未提高,如果不同碰撞域使用不同数据率就不能连
  • 网桥(Bridges)
    • 数据链路层,连接两个局域网的互联设备,CPU+内存+两个网络接口的计算机
    • 功能:过滤帧,同一个LAN段就扔;不同就转发;其他情况扩散除入口以外所有端口
      • 转发帧之前必须执行CSMA/CD算法
    • 网桥转发表:地址、接口、帧进入网桥的时间
    • 网桥环:产生转发的帧在网络中不断兜圈子
  • 交换机(Switch)
    • 数据链路层,逻辑上是多接口网桥,隔离冲突域
    • 交换速率较高,最大的优点是独占传输媒体的带宽

第8课 远程数字连接技术、网络性能

【知识点回顾】

  • 远程数字连接技术
    • 数字电话、数字音频
    • Nyquist采样定理
      • 如果一个连续信号用大于两倍的最高有效频率采样,信号可以从样本重建
    • 脉冲编码调制(Pulse Code Modulation,PCM)
      • 时间上的采样,数量上的编号
    • 同步通信(Synchronous Communication)
      • 语音系统采用同步或时钟技术,数据网络采用异步技术,以精确速率移动数据
    • DSU/CSU和NIU
      • 数据服务单元(DSU)、信道服务单元(SCU)、网络接口单元(NIU)
    • 本地环路(Local loop)和综合业务数字网(ISDN)
    • 数字用户线路技术
      • 非对称数字用户线路(ADSL)
        • 采用频分多路复用
        • 极限传输距离与线径有关,线越细、衰减越大、极限传输距离越小

        • 采用自适应调制技术使用户线能够传送尽可能高的数据率
        • 组成

      • 离散多音调DMT调制技术
        • 采用频分复用的方法
      • 电缆调制解调器技术
        • 社区天线电视(CATV),频分复用,同轴电缆
        • 缺点:与其他用户共享带宽
      • 光纤同轴混合网(HFC)
        • 可传送CATV,还提供电话、数据和其他宽带交互型业务
        • 用户接口盒UIB要提供三种连接
          • 同轴电缆连机顶盒和电视;双绞线连电话;电缆调制解调器连计算机
      • 采用光纤的接入技术FTTx
        • FTTH:居民接入网最终解决方法
        • FTTB:进入大楼转换为电信号
        • FTTC:星型结构双绞线
  • 网络技术过去和现在
    • 广域网是虚电路,面向连接,可靠,只需要虚电路号并且虚电路必须释放,跳到跳
    • 数据报不需要虚电路,没有连接,不可靠,报文需要包含目的地址,端对端
    • 帧中断(Frame Relay):用于桥接LAN网段的FR服务。
      • FR的优点:支持较高速率,只包含物理层和数据链路层,允许支持突发数据,长度大
      • FR的缺点:不提供差错控制功能,对多媒体数据传输的支持不够
  • 网络所有权、服务模式和性能
    • 虚拟专用网(VPN):在公用网络上建立专用网络,进行加密通讯
    • 性能度量:延迟(时延)、吞吐量(容量)、抖动(变化量

第9课 广域网技术与路由、协议系列

【知识点回顾】

  • 协议:参与通信的各方在交换消息时,必须遵守指定的消息格式,以及消息所需的行动规则
    • 实施这些规则的软件称为协议软件
    • 协议系列/族:协议的设计应为完整的、相互配合的,而不是孤立的。应处理所有可能的硬件故障或其他异常情况。
  • 两种国际标准
    • 法律上国际标准:ISO/OSI模型
      • 共七层
        • 物理层:完成bit和载波的转换,处理与物理传输介质相关的接口
        • 链路层:分为介质访问控制层(MAC)和逻辑链路控制子层(LLC)
        • 网络层:负责点对点通信,流量控制,拥塞控制
        • 传输层:给上层提供通用的应用界面,屏蔽结构差异,实现端对端通信
        • 会话层:会话建立、撤销,提供进程间通信机制
        • 表示层:信息压缩,信息加密解密,与标准格式的转换
        • 应用层:应用程序
      • 优点:结构清晰,软件重用,规格统一,减少冲突
      • 缺点:高层很难对低层通信进行优化,层次过多过细,软件复杂,效率低
    • 事实上的标准:TCP/IP协议族
      • 共四层:网络接口层、网际层、传输层、应用层
      • 主机和路由器都需要TCP/IP协议软件
      • 具体的IP地址见第十讲

第10课 网际协议编址

【知识点回顾】

  • 路由:为单网络中、多网络间或跨多网络的流量选择路径的过程。
    • 广义在各种类型的网络,包括电路交换网络;狭义通常指IP路由。
    • 路由器是在计算机网络之间转发数据包的网络设备。
  • IP地址
    • IP地址是分配给连接到使用IP协议进行通信的每个设备的数字标签
    • 每个主机指派一个32位编址,全球唯一(ICANN公司分配裁决)
    • 点分十进制计数法:每8位作为无符号十进制值用点分配
      • 网络号8位,主机号24位,网络号指的是物理网络
    • 传统分类地址:ABCDE类(根据网络号)
      • A类 0~127
      • B类 128~191
      • C类 192~223
      • D类 224~239
      • E类 240~255
    • 特殊的IP地址
      • 地址全0:本机地址;地址全1:有限广播
      • 主机号全0:网络;主机号全1:直接广播
      • 回送地址:127.0.0.0/8
    • 地址掩码
      • 用N表示网络地址,D表示目标地址,M表示网络掩码,则求取网络地址可以根据:N = (D\&M)
    • 无类域间路由(CIDR)表示法
      • ddd.ddd.ddd.ddd/m,其中d是网络号,m为掩码中1的个数
    • 每个路由器有两个或多个IP地址,IP地址不标识计算机
  • IP数据报
    • 虚拟分组:得到通用的、虚拟的数据包,底层硬件不理解,路由器和主机里的软件理解
    • IP报文头格式(基本长度20B)

版本、报头长度、服务类型、报文总长度、标识、分片标志、片偏移、生存时间、协议类型、报头校验和、源IP地址、目标IP地址、选项内容、填充

    • 路由表的组成:目标网络号、子网掩码、下一跳(直接传送标志、子网IP地址)
      • 默认路由0.0.0.0/0
      • 通过子网掩码进行计算的路由表匹配
        • 获得IP报文的目标IP地址D
        • 用D顺序逐条匹配路由表的各个条目T[0],T[1],T[2]
        • 如果D \& T[i].m == T[i].d,D是目标端地址,m是子网掩码,d是子网网络号,n为下一跳地址
      • 数据报里仅有最终目标地址,中途经过不改头部信
  • IP封装、分片和重组
    • 最大传输单位元MTU,IP报文长大于MTU要分片
      • 每片尽可能大,头部每片都要有

第11课 数据报转发

【知识点回顾】

  • Internet控制报文协议(ICMP)
    • 目的:提高IP数据报交付成功的机会;协议在网络层。
    • 机制:主机或路由器报告差错情况提供有关异常情况的报告
    • ICMP报文的种类
      • 差错报告报文:3、4、11、12、5
      • 询问报文:8/0、13/14、17/18、10/9
    • ICMP报文格式

    • 不应发送ICMP差错报告报文的几种情况
      • 对于ICMP差错报告报文不再发送ICMP差错报告报文
      • 第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文
      • 具有多播地址的数据报不再发送ICMP差错报告报文
      • 具有特殊地址的数据报不发送ICMP差错报告报文
    • ping使用ICMP消息测试可达性
      • PING(Packet Internet Groper),因特网包探索器
      • 报文类型:ICMP回送请求和回送回复消息
      • ping是应用层直接使用网络层ICMP的例子,没有通过传输层的TCP或UDP
    • tracert使用ICMP追踪路由器
      • 每个路由器处理生存周期(TIME TO LIVE)计数器。
      • 计数器到0,丢弃数据报并发送超时错误;不断增加TTL值直到达到目标
  • 地址解析协议(ARP)
    • IP地址解析为MAC地址的叫做地址解析。
    • 不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址
    • 技术:
      • 查表:存储在内存表
      • 相近形式计算:配置使得硬件地址可通过简单的布尔和算数运算得到对应的协议地址
      • 消息交换:一台计算机发出某个地址联编的请求消息后,另一台计算机返回一个包含所需信息的应答消息。
    • 使用ARP的四种典型情况
      • 主机发送数据报到本网络的另一台主机。
        • ——找目的主机的硬件地址
      • 主机发送数据报到另一个网络上的一台主机。
        • ——找本网络路由器的硬件地址,由该路由器转发
      • 路由器转发数据报到本网络的一台主机。
        • ——找目的主机的硬件地址
      • 路由器转发数据报到另一个网络上的一台主机。
        • ——找本网络另一个路由器的硬件地址,由该路由器转发
    • ARP帧格式

    • ARP封装

    • ARP欺骗
      • 核心思想:向目标主机发送伪造的ARP应答,并使目标主机接收应答中伪造的IP地址与MAC地址之间的映射对,以此更新目标主机ARP缓存。 
    • ARP高速缓存(ARP Cache)

第12课 传输层协议简介、用户数据报协议

【知识点回顾】

  • 传输层概述
    • 传输层的作用提供了进程间的复用和解复用
    • 端口(Port):软件端口,16位,0~65535,用于标识本机的不同进程
      • 分类

      • 常用端口号

  • 用户数据报协议(User Datagram Protocol,UDP)
    • 作用:不可靠但轻快的传输
    • UDP消息可以丢失、重复、延迟、乱序、损坏
    • UDP分组结构

    • 特点:无连接;尽力交付;支持一对一、一对多的交互通信;首部开销小
    • 面向报文:发送方添加首部向下交付IP层,接收方去除首部交付应用进程
    • 常用于丢包损失不大,应用层可以控制丢包的场景

第13课 传输控制协议

【知识点回顾】

  • 传输控制协议(Transmission Control Protocol,TCP)
    • 提供面向连接、点对点、流接口、完整可靠的全双工通信
    • 首部格式(基本信息20B)

    • 基本机制——TCP流接口
      • TCP的传输是以字节为单位封装在报文段中传输。
      • TCP连接是一条虚连接,而不是一条真正的物理连接
      • 停止-等待协议
        • 无差错情况:发送、停止、等待
        • 有差错情况:设置超时计时器,超时重传
        • 自动重传请求机制
          • 确认丢失和确认收到:通过自动重传请求,在不可靠的网络上实现可靠的通信
          • 连续自动重传请求:流水线传输提高了信道利用率
        • 窗口机制(逐一确认、累积确认):字节为单位的滑动窗口
          • 发送缓存:TCP准备发送的TCP已发送但没收到确认的
          • 接收缓存:按序到达的但没读取的不按序到达的
        • 超时重传

          • 只要重传就不采用往返时间样本,每重传一次RTO乘2,不重传时恢复
        • 选择确认(SACK):不连续就收下,告诉发送方,让它不再重复
    • 流量控制——滑动窗口
      • 目的:使发送方的发送速率,让接收方来得及接受,且不使网络发生拥塞
      • TCP为每一个连接设有一个持续计时器,时间到期就发一个零窗口探测报文段(仅携带1字节的数据),对方在确认这个报文段时给出现在的窗口值:如果是0,重新设置计时器;如果不是0就打破僵局。
      • 传输效率:不同机制
        • 1️⃣TCP维持一个变量等于MSS,达到最大报文段长度MSS时就发送出去
        • 2️⃣发送方的应用程序指明要求发送报文段,即TCP支持的推送(push)操作
        • 3️⃣发送方的计时器期限到了,就把当前的不超过MSS的缓存数据发送出去
    • 拥塞控制
      • 原理:对资源需求的总和>可用资源
      • 全局性(所有主机、路由器),相比之下流量控制仅负责发送端和接收端的点对点通信量的控制,动态问题
      • 思路:
        • 开环控制(Open loop):设计网络前事先考虑有关拥塞的因素
        • 闭环控制(Close loop):基于反馈环路,监测、传送信息、调整系统运行
      • 拥塞窗口(congestion window):发送方维持的状态变量。
        • 动态变化,没拥塞就大些多发送一些,拥塞了就小些少发送一些。
      • 慢开始和拥塞避免
        • 加性增大:cwnd初始置1,发送方每收到一个对新报文段的确认(重传不算)就使cwnd加1,到达门限值改用拥塞避免算法
        • 乘性减小:一旦拥塞,门限值改为窗口大小的一半
        • 拥塞避免:拥塞窗口控制为按线性规律增长,使网络不容易堵塞(不是完全避免)

      • 快重传和快恢复
        • 快重传:接收方每收到一个失序报文段立即发出重复确认。收到三个重复确认应当立即重传,同时执行“乘法减小”算法,把慢开始门限ssthresh减半,但接下去不执行慢开始算法。
        • 发送方的发送窗口的上限值应该取为接收方窗口rwnd和拥塞窗口cwnd这两个变量中较小的一个。
      • 随机早期检测RED(Random Early Detection)

    • 连接管理
      • 三个阶段:连接建立、数据传送和连接释放
      • 通信双方:客户端(Client)、服务器端(Server)
      • 连接建立:三次握手
        • 客户➡️服务器 请求报文段 同步位SYN=1 seq=x(第一个数据字节序号为x)
        • 服务器➡️客户 同意则发回确认 SYN=1,ACK=1 ack=x+1,seq=y
        • 客户➡️服务器 确认 ACK=1,ack=y+1 客户通知上层应用连接建立
          • 三次握手结束,服务器通知上层应用连接建立,开始数据传送
      • 连接解除:四次挥手
        • 客户➡️服务器 连接释放报文段 FIN=1,seq=u
        • 服务器➡️客户 确认 ack=u+1,seq=v TCP服务器通知高层 
          • 客户到服务器方向的连接释放
        • 服务器➡️客户 通知TCP释放连接
        • 客户➡️服务器 确认 ACK=1,ack=w+1,seq=u+1
          • 连接解除,必须经过2MSL(最长报文寿命)真正释放
      • 有限状态机

第14课 因特网路由与路由协议

【知识点回顾】

  • 路由协议的基本概念
    • 路由协议(Routing Protocol) : 一种指定数据报文转送方式的网络协议
    • 原理:路由协议创建了路由表,描述了网络拓扑结构;路由协议与路由器协同工作,执行路由选择和数据包转发功能。
    • 路由选择的复杂性:共同协调、不断变化,不存在绝对最佳路由算法
    • 自适应分类:静态路由选择策略、动态路由选择策略
  • 自治系统
    • 因特网采用分层次的路由选择协议
    • 自治系统(Autonomous System) : 在单一的技术管理下的一组路由器
      • 域内路由选择:一个AS对其他AS表现出单一、一致的路由选择策略
      • 域间路由选择:AS之间
    • 路由选择协议分层
      • 内部网关协议(Interior Gateway Protocol,IGP):AS内部使用
      • 外部网关协议(External Gateway Protocol,EGP):边界网关
  • 路由信息协议(Routing Information Protocol,RIP)
    • 工作原理:分布式的、基于距离向量的路由选择协议
    • 要点:仅和相邻路由器交换信息、交换的信息是自己的路由表、按固定间隔时间交换路由信息。
    • RIP距离也叫跳数(hop count),直接连的距离为1,每经过一个路由器跳数加1,距离为16相当于不可达
    • 路由表的建立
      • 刚开始记录直连距离为1
      • 与有限相邻路由器交换并更新路由信息
      • 收敛过程块,所有路由器最终知道最短距离和下一跳地址
    • 距离向量算法:Bellman-Ford算法,满足最优子结构性质
    • RIP协议的优缺点:
      • 优点:实现简单,开销较小
      • 缺点:限制网络规模,出现故障需要时间,网络规模大时开销大
  • 开放最短路径优先协议(Open Shortest Path First,OSPF)
    • 开放(公开发表),最短(Dijkstra算法),分布式链路状态协议
    • 三个要点:
      • 使用洪泛法向本自治系统中所有路由器发送信息
      • 发送的信息是与本路由器相邻的所有路由器的链路状态(和哪些路由器相邻、该链路的度量)
      • 只有链路状态发生变化时,路由器才用洪泛法发送此信息
    • 链路状态数据库link-state database
      • 全网的拓扑结构图,全网范围内一致
      • 更新过程收敛得快(重要优点)
    • 区域(area):自治区域划分为更小的范围,每一个区域都有一个32位的区域标识符。不能太大,一个区域里路由器最好不超过200个。
      • 主干区域0.0.0.0,作用是连通其他在下层的区域
    • 直接用IP数据报传送,很短可以减少信息量,而且不同分片

    • 五种分组类型
      • 问候(Hello)分组
      • 数据库描述(Database Description)分组
      • 链路状态请求(Link State Request)分组
      • 链路状态更新(Link State Update)分组
      • 链路状态确认(Link State Acknowledgment)分组
    • OSPF的基本操作

    • 其他优点
      • 每隔一段时间刷新一次数据库中的链路状态,规模大时更好,响应网络变化的速度快
  • 边界网关协议(BGP)
    • BGP是不同自治系统的路由器之间交换路由信息的协议。
    • BGP力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
    • BGP发言人建立TCP连接,交换BGP报文、建立BGP会话来交换路由信息。两个BGP发言人彼此成为对方的邻站或对等站
    • 特点:
      • 结点数量级是自治系统数的数量级,比网络数少很多
      • 每一个自治系统中BGP发言人(或边界路由器)的数目很少
      • 支持CIDR,路由表包括目的网络前缀、下一跳路由器、要经过的自治系统序列
      • BGP刚刚运行时,BGP邻站是交换整个BGP路由表,但以后只需要在发生变化时更新有变化的部分,节省网络带宽、减少路由器的处理开销
    • 使用四种报文
      • 打开(open):与相邻的另一个BGP发言人建立关系
      • 更新(update):发送某一路由的信息,以及列出要撤销的多条路由
      • 保活(keepalive)报文:确认打开报文和周期性地证实邻站关系
      • 通知(notification)报文:发送检测到的差错
    • BGP报文通用的首部

第15课 网络编程与Socket API

【知识点回顾】

  • 客户端与服务器端
    • 应用层的许多协议都是基于客户/服务器方式,客户和服务器都是指通信中所涉及的两个应用进程
    • 客户端或服务器端是指一个程序;客户软件或服务器软件是指一个软件;客户设备和服务器设备是指一个硬件
    • 客户端(主动打开、主动结束),服务器端(被动打开、响应请求
    • 客户是服务的一块、是服务的请求者;服务器是一个系统、是服务的提供者。
    • 一台计算机上的多种服务
      • TCP/UDP复用与解复用
      • TCP连接由它的两个端点来标识(IP地址+端口号=Socket插口)
      • UDP无连接但也需要Socket
        • UDP与应用层之间的端口都是用报文队列来实现(入/出队列)
    • 并发(Concurrency)
      • 并发是客户端-服务器交互模式的基础。
      • 允许多个应用在同一时间执行的计算机系统称为支持并发;一个拥有多个线程的程序称为并发程序。
  • 网间进程通信
    • 系统调用(system call):大多数操作系统是用系统调用的机制在应用程序和操作系统之间传递控制权
    • 应用编程接口(Application Program Interface,API)
    • 单机进程通信
    • 网间进程通信:解决不同主机进程间的相互通信问题
    • TCP/IP协议提出了协议端口(protocol port),用于标识通信的进程

    • 套接字(Socket):应用需要网络通信时发出系统调用,请求创建套接字,以便分配网络通信需要的系统资源。通信完毕后回收所有资源
      • 主要的Socket API函数名

    • 连接建立:创建套接字 ➡️ bind指明本地地址 ➡️ listen监听设置被动方式 ➡️ UDP不使用listen ➡️ accept提取请求
  • Socket API
    • 半相关:网络中用三元组在全局唯一标识一个进程(协议、本地地址、本地端口号)
    • 全相关:一个完整的网间通信需要一个五元组来标识(协议、本地地址、本地端口号、远程地址、远程端口号)
    • Socket
      • 本地套接字地址(本地IP地址、本地端口号)
      • 远程套接字地址(远程IP地址、远程端口号)
      • 协议(TCP、UDP、原始(raw)IP)
    • 网络字节顺序

第16课 传统的因特网应用(系列)

【知识点回顾】

  • 域名系统
    • 域名结构
      • 域名系统(Domain Name System,DNS)
        • 提供了将人类可读符号域名映射到计算机地址的服务
      • 域名:因特网上的主机或路由器所具有的唯一的层次结构的名字
        • 顶级域名(Top Level Domain,TLD):国家/地区;通用;基础机构域名arpa
        • 区(zone):一个服务器所负责管辖的(或有权限的)范围。
    • 域名服务器的模型
      • 域名服务器的四种类型
        • 根域名服务器(最重要)
          • (存储顶级域名服务器的地址信息)
        • 顶级域名服务器
          • (保存顶级域名服务器下一级区的权限域名服务器)
        • 权限域名服务器
          • (保存该区汇总所有主机的域名到IP地址的映射)
        • 本地域名服务器
          • (进行具体主机的域名解析服务)
    • 域名解析过程
      • 递归查询:主机向本地域名服务器的查询
      • 迭代查询:本地域名服务器向根域名服务器的查询

      • DNS条目类型(域名+记录类型+值
      • 资源记录

  • 电子邮件e-mail
    • 电子邮件概述
      • 把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取。
      • 特点:使用方便,传递迅速,费用低廉;还可以附声音和图像
    • 电子邮件格式
      • 要求每个用户有一个地址 
        • 格式为:用户名@主机域名
      • 发件人,回复地址;收件人,抄送,密送;时间;主题,内容;附件;扩展属性(是否要求回执、重要性)
    • 邮件代理和协议
      • 三种代理
        • 邮件用户代理(Mail User Agent,MUA)
        • 邮件传输代理(Mail Transport Agent,MTA)
        • 邮件投递代理(Mail Delivery Agent,MDA)
      • 常见的电子邮件协议
        • SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)
        • POP3(邮局协议)
        • IMAP4(Internet邮件访问协议)
      • 扩展
        • MIME(支持非ASCII字符、二进制附件等多种格式的邮件消息)
      • 电子邮件软件 = 电子邮件接口应用 + 邮件传输程序
        • 规格三大类:传输、访问、表达
    • SMTP协议
      • 遵循流范式,使用文本控制消息,只传送文本消息,发送一个给定消息的副本,允许客户端列出用户然后向所有用户发送消息的单个副本,端口25
      • 三个阶段
        • 连接建立、邮件传送(建立连接、连接终止)、连接释放
    • MIME标准
      • 多用途互联网邮件扩展(Multipurpose Internet Mail Extensions)
      • 不是邮件协议,不能替代SMTP,仅对SMTP扩展

    • POP3协议
      • 邮局协议(Post Office Protocol,POP)
      • 允许用户通过PC机动态检索邮件服务器上的邮件,端口110
      • 授权状态 ➡️ 事物状态 ➡️ 更新状态
    • IMAP4协议
      • 因特网邮件访问协议4(Internet Mail Access Protocol,IMAP)
      • 三种工作方式:离线、在线和断连方式,端口143
      • 适合使用多台计算机的用户,只下载主题、不下载内容
      • SPAM(垃圾邮件)
  • 文件传输
    • FTP协议
      • 文件传送协议(File Transfer Protocol,FTP)
      • 使用基于流的客户服务器方式
      • 使用两个端口号,21用来控制连接,20用来数据连接
      • 文件类型:ASCII文件、EBCDIC文件、Image文件
      • 传输模式:流模式(默认)、分块模式、压缩模式
    • TFTP协议
      • 简单文件传输协议(Trivial File Transfer Protocol,TFTP)
      • 简化的TCP/IP文件传输协议,很小,易于实现
      • 使用客户服务器方式,使用UDP数据报,有自己的差错改正措施
      • 只支持文件传输,不支持交互
    • NFS协议
      • 网络文件协议(Network File System,NFS)
      • 文件系统,没有传输功能,基于RPC协议实现的
    • SMB协议
      • 简单文件共享(Server Message Block,SMB)
      • 基于TCP-NETBIOS,一般端口为139、445,局域网上用
    • Telnet协议
      • 远程终端协议
      • 使用客户-服务器方式,使用NVT(网络虚拟终端)格式
  • 网页浏览
    • 万维网
      • WWW(World Wide Web)大规模的、联机式的信息储藏所
      • 万维网是分布式超媒体系统,它是超文本系统的扩充
      • 工作方式:客户-服务器
      • 使用统一资源定位符URL(Uniform Resource Locator)来标识万维网上的各种文档,唯一。
      • 用超文本传送协议HTTP,应用层协议,使用TCP连接

    • HTTP协议
      • 面向事务应用层协议,万维网上能够可靠地交换文件的重要基础

      • HTTP的主要特点:面向事务,客户服务器协议;无状态;无连接

      • 持续连接的两种工作方式
        • 非流水线方式——浪费资源
        • 流水线方式——提高下载文档效率
      • 代理服务器(proxy server)
        • 又称万维网高速缓存,代表浏览器发出HTTP请求
      • HTTP的报文结构
        • 请求报文——从客户向服务器发送请求
        • 响应报文——从服务器到客户的回答

      • HTTP状态码
        • 1xx:收到了/正在处理
        • 2xx:成功,接受/知道了
        • 3xx:重定向,必须采取进一步行动
        • 4xx:客户差错
        • 5xx:服务器差错
      • 存放用户信息
        • Cookie表示在HTTP服务器和客户之间传递的状态信息

第17课 高级专题(网络安全、网络发展趋势)

【知识点回顾】

  • 网络结构设计
    • 确定需求 ➡️ 准备概要设计 ➡️ 监测网络 ➡️ 维护文档
  • 网络技术展望
    • IP语音
    • 网络安全技术(窃听、重播、地址欺骗、域名欺骗)
      • 散列、加密、数字签名、数字证书、防火墙
    • 网络管理SNMP、软件定义网络SDN、物理网IoT
  • 网络技术与应用趋势
    • 可扩展因特网服务,内容缓存,P2P对等通信,社交网络,数字视频,云计算,IPv6的广泛部署等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/892497.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32之CAN通讯(十一)

STM32F407 系列文章 - CAN通讯(十一) 目录 前言 一、CAN 二、CAN驱动电路 三、CAN软件设计 1.CAN状态初始化 2.头文件相关定义 3.接收中断服务函数 4.用户层使用 1.用户层相关定义 2.发送数据 3.接收数据 1.查询方式处理 2.中断方式处理 3…

Java聊天小程序

拟设计一个基于 Java 技术的局域网在线聊天系统,实现客户端与服务器之间的实时通信。系统分为客户端和服务器端两类,客户端用于发送和接收消息,服务器端负责接收客户端请求并处理消息。客户端通过图形界面提供用户友好的操作界面,服务器端监听多个客户端的连接并管理消息通…

C#Halcon找线封装

利用CreateMetrologyModel封装找线工具时,在后期实际应用调试时容易把检测极性搞混乱,造成检测偏差,基于此,此Demo增加画线后检测极性的指引,首先看一下效果 加载测试图片 画线 确定后指引效果 找线效果 修改显示 UI代…

【linux系统之redis6】redis的基础命令使用及springboot连接redis

redis的基础命令很多,大部分我们都可以在官网上找到,真的用的时候可以去官网找,不用全部记住这些命令 redis通用的基础命令的使用 代码测试 string类型常见的命令 key值的结构,可以区分不同的需求不同的业务名字 hash类型 创建…

ISP各模块功能介绍

--------声明,本文为转载整理------- ISP各个模块功能介绍: 各模块前后效果对比: 黑电平补偿(BLC) 在理想情况下,没有光照射的像素点其响应值应为0。但是,由于杂质、受热等其它原因的影响&…

前缀和练习

【模版】前缀和 【模板】前缀和_牛客题霸_牛客网 思路 要想快速找出某一连续区间的和&#xff0c;我们就要使用前缀和算法。 其实本质是再创建一个dp数组&#xff0c;每进一次循环加上原数组的值&#xff08;dp代表arr的前n项和&#xff09;&#xff1a; vector<int>…

3. 【Vue实战--孢子记账--Web 版开发】--登录大模块

从这篇文章开始我们就进入到了孢子记账的前端开发&#xff0c;在本专栏中我默认大家的电脑上都已经配置好了开发环境。下面我们一起开始编写孢子记账的Web版吧。 一、功能 登录大模块功能包括注册、登录和找回密码功能&#xff0c;在本篇文章中我只会展示注册界面的实现&…

【2024年华为OD机试】 (A卷,100分)- 端口合并(Java JS PythonC/C++)

一、问题描述 题目描述 有 M 个端口组 (1 < M < 10)&#xff0c; 每个端口组是长度为 N 的整数数组 (1 < N < 100)&#xff0c; 如果端口组间存在 2 个及以上不同端口相同&#xff0c;则认为这 2 个端口组互相关联&#xff0c;可以合并。 输入描述 第一行输入端…

73.矩阵置零 python

矩阵置零 题目题目描述示例 1&#xff1a;示例 2&#xff1a;提示&#xff1a; 题解思路分析Python 实现代码代码解释提交结果 题目 题目描述 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例…

基于华为ENSP的OSPF状态机、工作过程、配置保姆级别详解(2)

本篇技术博文摘要 &#x1f31f; 基于华为enspOSPF状态机、OSPF工作过程、.OSPF基本配置等保姆级别具体详解步骤&#xff1b;精典图示举例说明、注意点及常见报错问题所对应的解决方法 引言 &#x1f4d8; 在这个快速发展的技术时代&#xff0c;与时俱进是每个IT人的必修课。我…

SOLID原则学习,接口隔离原则

文章目录 1. 定义2. 为什么要遵循接口隔离原则&#xff1f;3. 违反接口隔离原则的例子4. 遵循接口隔离原则的改进5. 总结 1. 定义 接口隔离原则&#xff08;Interface Segregation Principle, ISP&#xff09; 接口隔离原则是面向对象设计中的五大原则&#xff08;SOLID&#…

Jenkins-持续集成、交付、构建、部署、测试

Jenkins-持续集成、交付、构建、部署、测试 一: Jenkins 介绍1> Jenkins 概念2> Jenkins 目的3> Jenkins 特性4> Jenkins 作用 二&#xff1a;Jenkins 版本三&#xff1a;DevOps流程简述1> 持续集成&#xff08;Continuous Integration&#xff0c;CI&#xff0…

从0到机器视觉工程师(六):配置OpenCV和Qt环境

CMake配置OpenCV CMakeLists.txt文件的编写 cmake_minimum_required(VERSION 3.20) project(test_opencv LANGUAGES CXX) #寻找Opencv库 FIND_PACKAGE(OpenCV REQUIRED) include_directories(test_opencv ${OpenCV_INCLUDE_DIRS}) add_executable(test_opencv main.cpp) TARGE…

CDA数据分析师一级经典错题知识点总结(3)

1、SEMMA 的基本思想是从样本数据开始&#xff0c;通过统计分析与可视化技术&#xff0c;发现并转换最有价值的预测变量&#xff0c;根据变量进行构建模型&#xff0c;并检验模型的可用性和准确性。【强调探索性】 2、CRISP-DM模型Cross Industry Standard Process of Data Mi…

【Uniapp-Vue3】v-for列表渲染的用法

如果我们想要重复渲染多个元素&#xff0c;就可以使用v-for进行渲染。 比如我们想要将元素渲染5次&#xff1a; 如果我们想要知道当前元素是渲染的第几个&#xff0c;可以在v-for的时候添加参数index&#xff0c;并在差值表达式中填入index&#xff1a; 则index会以0开始进行渲…

《新闻大厦抢先版》V0.18.105+Dlcs官方学习版

《新闻大厦抢先版》官方版https://pan.xunlei.com/s/VODaeUn3v-ZWVvvmUMfo5AqWA1?pwdnhpz# 建造并不断优化新闻大楼&#xff0c;保障员工权益并及时赶上周日的印刷交期&#xff01; 招募并管理不同职业以登上成功的阶梯&#xff1a;记者、摄像师、勤杂工&#xff0c;除此以外…

解锁3D模型转换:STL转OBJ全攻略

一、3D模型转换的基石&#xff1a;STL与OBJ格式概览 在3D模型的世界里&#xff0c;STL和OBJ格式犹如两大基石&#xff0c;支撑着模型创建、编辑、转换与应用的方方面面。了解它们的特性&#xff0c;是深入探究3D模型转换的关键第一步。 1.1 STL格式深度剖析 STL 全称为Stereo…

RK3568 Android 13 内置搜狗输入法小计

问&#xff1a;为什么写&#xff1f; 答&#xff1a;网上搜出来的都试过了&#xff0c;不行&#xff01;下面直接上代码和注意事项&#xff01; 首先到这个目录&#xff08;/RK3568/Rockchip_Android13_SDK_Release/device/rockchip/rk356x/tl3568_evm/preinstall&#xff09…

windows10下安装Microsoft SQL Server 2016

一、下载安装包 网站&#xff1a;MSDN, 我告诉你 - 做一个安静的工具站 选择需要的版本&#xff0c;点击详细信息&#xff0c;复制ed2k链接&#xff0c;打开eMule或迅雷&#xff0c;新建下载&#xff0c;粘贴链接&#xff0c;开始下载。 下载好的文件是一个.iso镜像文件。 二、…

探索图像编辑的无限可能——Adobe Photoshop全解析

文章目录 前言一、PS的历史二、PS的应用场景三、PS的功能及工具用法四、图层的概念五、调整与滤镜六、创建蒙版七、绘制形状与路径八、实战练习结语 前言 在当今数字化的世界里&#xff0c;视觉内容无处不在&#xff0c;而创建和编辑这些内容的能力已经成为许多行业的核心技能…