您的位置:首页 > 理论基础

计算机网络 知识点总结

2020-04-22 02:54 381 查看

文章目录

  • 本文为 计算机网络 第五版 的知识点总结
  • 较为零散,可差缺补漏式的看看

引言

  • 广域网使用router将多个局域网连接起来
  • 广域网中通信是点对点
  • 报文流有边界,字节流无边界
  • 低三层(物理、数据链路、网络)被称为 通信子网
  • data link是点到点(host主机到host主机),transfer是端到端(进程到进程)
  • OSI模型的网络层可以是面向连接或无连接的,TCP/IP的网络层只能是无连接的(因为使用的IP协议无连接)
  • 各个硬件设备: Hub物理层。不能隔离冲突域和广播域
  • Switch、Bridge数据链路层。可以隔离冲突域,不可隔离广播域
  • Router网络层。可以隔离冲突域和广播域

物理层

  • 基带传输,直接传输0,1电压

  • 物理层需要做宽带调制和频分复用

  • Nyquist(奈式)定理,决定了传播信号速率上限

    max=2Wlog2V(b/s)max = 2Wlog_2V (b/s)max=2Wlog2​V(b/s)

    其中W为采样率,单位是Hz;V是进制数

  • Shannon(香农)定理,决定了有噪声情况下的最大传播速率

    max=Wlog2(1+S/N)max=Wlog_2(1+S/N)max=Wlog2​(1+S/N)

    其中W单位Hz,S/N为信噪比。(db转换为10lg(S/N))

  • 各个信号编码模式

  • 分组交换有两种:

    数据报
  • 虚电路:先在逻辑上建立一条虚电路,之后类似电路交换

数据链路层

  • data link要做:

    流量控制:控制发送速度 停等协议(即Wt=Wr=1的滑动窗口)
  • 滑动窗口协议:Wt发送窗口,表示还可以发送多少,收到ACK向前滑;Wr接受窗口,收到就前滑并返回ACK
  • 后退N协议:按序发送N个帧后,发现N前的那个未收到ACK,就将其和其之后的全部重传。此外,连续正确才发送ACK,即第N帧的ACK表示N和N以前的都正确。发送窗口需要小于2^n-1,否则无法分辨新旧帧
  • SR选择重传协议:和GBN类似,但在发现差错后会缓存收到的正确帧,不必全部重传。此外,发现怀疑有错,需要发送NAK来表示怀疑。其Wt=Wr
  • 差错控制:
      CRC冗余校验,一
    • 海明码可以纠错
    • ARQ重传,FEC前向纠错
  • 成帧:即定界并打包。
      比特填充:例如HDLC,F(011111110)作为界。中间5个1填1个0
    • 字节填充:例如PPP
  • 以太网是无确认无连接,无线是有确认无连接

  • 信道利用率的计算:

    利用率=L/CT利用率=\frac{L/C}{T}利用率=TL/C​

    T=L/C+2RT=L/C+2RT=L/C+2R

    其中L为发送的比特数,C为传输率,T为发送周期,R为单播时间。此外,如果是滑动窗口协议,则为:

    NTframe2Tprop+Tframe\frac{NT_{frame}}{2T_{prop}+T_{frame}}2Tprop​+Tframe​NTframe​​

  • 吞吐量=利用率*发送速率

  • 注意ACK帧是额外发送的

  • 介质访问控制子层(MAC)

    • 是data link的底部。使得两结点之间相互通信,不会互相干扰
    • 多路复用:1条链路,多个信道 FDM频分复用:可以保护频带
    • TDM时分:时间片,轮流来
    • WDM波分
    • CDM码分:用不同的编码方式来区分。一种方法,设置码片使得任意两个码片正交。如果要发送1,则发送该码片;如果发送0则发送反码片(全部取反)。之后将存在的各个结果累加。将信号分到各个编码,只需要将总信号和码片点积即可
  • 随机访问介质:解决不同用户访问同一个信道的问题

      纯ALOHA,自由,用户占全部速率,碰撞则重传。其吞吐量为:

      S=Ge−2GS=Ge^{-2G}S=Ge−2G

      其中G为负载。在G为0.5时,S为0.184,为最大吞吐量

    • 时隙ALOHA,将时间分为多个时隙,而非连续的时间。其吞吐量为:

      S=Ge−GS=Ge^{-G}S=Ge−G

      在G为1时,S为0.368,为最大吞吐量

    • CSMA (Carrier Sense Multiple Access),载波侦听。其思想为不断检测信道是否被占用,直到发现信道空闲之后再发送。其可分为以下几种:

      1-persistent CSMA。1坚持的含义是,监听如果发现信道空闲,发送的概率是1。如果监听忙,等待;如果发现冲突,随机等待
    • non-persistent CSMA。如果忙,随机等待一段时间,然后再继续监听
    • p-persistent CSMA。如果空闲,以p的概率发送
    • CSMA/CD (Collision Detection)。802.3(以太网)就采用此,是一种半双工。其思维是监听碰撞,且边听边发。 注意,假设总线传播时延为τ,则需要2τ时间知道是否冲突。所以,最小帧长=2τ*传输速率。
    • 以太网2τ=51.2μs,其传输速率为10Mb/s。故其最小帧长为512b = 64B
    • 一旦发生了冲突,则使用二进制指数退避来避免,其退避时间为2rτ
  • CSMA/CA (Collision Avoidance)。802.11a(wifi)使用此。其思维为,尽力避免冲突,不等待检测冲突。具体为先等待,再进入冲突窗口,计算退避时长。
  • 轮询/令牌
  • NIC网卡是计算机与传输介质之间的接口
  • 网络层

    • 路由器作用:路由选择、分组转发
    • 动态路由: 距离向量,RIP
    • 链路状态,OSPF
  • 层次路由:IGP(域内),EGP(域间,BGP)
  • 路由表的构成:目标IP,子网掩码,下一跳IP,接口号
  • IPv4,注意首部长度、总长度、片偏移分别为4B、1B、8B。注意DF、MF值和分片的关系等。
  • 通常下,IPv4地址可以分为网络号和主机号,网络只分配网络号。
      网络号根据其数值,可以分为ABC类网络
    • 主机号全零表示本机,全1表示广播
    • 注意:计算IP地址分配问题,可以支持多少主机
  • 而如果有子网掩码的话,则变为了三级IP,{网络号, 子网, 主机号}。子网掩码和IP逐位与得到结果
  • ARP是地址解析协议,从IP到MAC
  • DHCP是动态分配IP的协议(是个应用层协议,使用UDP)
  • ICMP用于报告差错和异常(网络层协议)
  • IPv6的首部是8B的整倍数,其地址是128位
      注意,IPv6中,连续的0可以省略,直接写作::。但是一个地址中只能有一个双冒号。(因为多个双冒号则无法推断0的个数)

    传输层

    • UDP: 8B首部
    • 计算校验和时,以2B为一组,求和后其反码为校验和(要加上伪首部)
  • TCP:
      20B首部
    • 计算校验和时,以4B为一组算
    • 面向字节流
    • 其头部有几个特殊的字段: 确认号:希望得到下一个TCP包的序号
    • ACK(acknowledge):其值为1时,确认号才有用
    • SYN(synchronize):在建立连接时有用
    • FIN:终止符
  • 建立连接的过程,三次握手:
      请求,去
    • 同意,回
    • 确认,去
  • 断开连接的过程,四次挥手:
      发起断开,去
    • 同意并开始最后一次传输,回
    • 传输完成,回
    • 确认断开,去。需要等待2MSL之后才能确认关闭了
  • 过程中如果收到了超时或者冗余的ACK,都会重传
  • 流量控制:利用滑动窗口来控制发送速率
  • 拥塞控制:其思想是有接受窗口rwnd和拥塞窗口cwnd,可发送的数目为他们的最小值。rwnd固定,而cwnd不断增长,其增长方式有以下两种:
      Tahoe慢开始+拥塞避免。cwnd从1开始,每过一个时间单位翻倍;如果到达了thresh,则变为每次加1。如果过程中发生了拥塞,则thresh减半,cwnd重新置为1
    • Reno快重传+快恢复。与Tahoe类似,但发生拥塞之后thresh减半,cwnd从减半后的thresh开始加1
    • 点赞
    • 收藏
    • 分享
    • 文章举报
    kfor1day 发布了5 篇原创文章 · 获赞 0 · 访问量 723 私信 关注
  • 内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: