计算机网络杂记

2023/02/01 Blog CRC HTTP TCP/IP VLAN THree-way handshake waves four times 计算机网络 共 5078 字,约 15 分钟

7层

应用层:能够产生网络流量 能够和用户交互的应用层序 记事本不是

表示层: 加密、压缩 开发人员考虑,加密保证数据安全 压缩:当文件过大时候,可在传输端压缩,减少要传输的数据流量,到接收端载解压缩,恢复数据,从而提高网络利用率

会话层:服务端和客户端建立的会话 查木马 netstat -nb

传输层:可靠传输建立了会话 不可靠传输 流量控制

网络层:IP地址编址 选择最佳路径

数据链路层:输入如何封装 添加物理地址 MAC地址

物理层:电压、接口标准

网络排错:从底层到高层

网络安全和OSI参考模型:

​ 物理层安全:接入端口

​ 数据链路层安全: ADSL 无线AP

​ 网络层安全: IP网段限制

​ 应用层安全:SQL注入漏洞 上传漏洞

课本5层模型:

应用层:应用层传输数据单元PDU

传输层:报文 (段) 运输层首部

网络层:IP数据报 IP分组 网络层首部

数据链路层:数据帧 数据链路层首尾

物理层:比特流

静态信道划分:频分复用 时分复用 波分复用 码分复用

动态信道划分:以太网随机接入·,受控制接入已经弃用

数据链路层

无比特出错

封装成帧:首尾

透明传输:开始结束字符加转义字符

差错控制:误码率

奇偶校验:在发送数据后面添加1位奇偶校验位,使得整个数据中1的个数位奇数(奇校验)或偶数(偶校验),不能检测出偶数位出错的数据

CRC循环冗余:除数补(被除数位数-1)个0除以被除数,做异或运算,最后得余数为FCS,传输原除数补FCS,接收端收到以后除以原被除数,结果为0无错

例如:

被除数101001,除数1101

除数位数为4,则被除数末尾补3个0为101001000

101001000 / 1101 = 商+余数(FCS)001

则最终输出的数据为101001001

除数是数据链路层协商

高级数据链路控制协议(HDLC):缺少身份验证

PPP协议:拨号上网时的协议

需要:封装成帧 透明性 多种网络层协议 多种类型链路 差错检测 检测连接状态 最大传输单元1500B

网络层地址协商 数据压缩协商

组成

将ip数据报封装到数据链路

链路控制协议(LCP)->网络控制协议(NCP)

LCP:身份验证,通过之后由NCP协商网络地址

PPP帧格式

(1)首部:7E FF 03表示开始,2个字节表示数据内容首部共计5字节

(2)IP数据报,最长不超1500B

(3)尾部:FCS帧检验序列2字节7E,尾部共计3字节

字节透明:7E开始结尾 异步传输

比特透明:每5个1插入1个0 同步传输

不使用序号和纠错机制,错误丢弃

CSMA/CA

image-20230118165107382

image-20230118181615039

image-20230118181835850

image-20230118182234960

image-20230118182937569

image-20230118182848610

image-20230118183542714

image-20230118183719520

image-20230118184226201

CSMA/CD 载波监听多点接入/碰撞检测

多点接入:多台计算机以多点接入的方式连接在一根总线上

载波监听:每个站点在发送数据之间都要先检测一下总线上是否有其他计算机正在发送数据,如果有,暂时不发送数据,等一个随机事件后再检测再发送,载波监听就是用电子技术检测总线上是否有其他计算机发送数据的信号

碰撞检测:计算机边发送数据边检测信道上的信号电压

  1. 当几个计算机同时发送数据时候,总线上的信号电压摆动值将会增大(互相叠加)
  2. 当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时发送数据,表明产生的碰撞
  3. 碰撞检测也称为冲突检测

特点:只能进行半双工通信

争用期:在发送数据时候至多经过2倍的往返时延,就知道发送的数 据帧是否遇到碰撞,以太网的争用期为51.2\(us\),最短有效帧长为64B

二进制指数类型退避算法:发生碰撞的计算机在停止发送数据后,要推迟一个随机时间再发送数据

  1. 确定基本退避时间,一般是争用期 ,\(2t\)

  2. 确定参数\(k\)

    ​ \(k = Min[重传次数,10]\)

  3. 从整数集合\([0,1,...,(2^k - 1)]\)中随机取出一个数,记为\(r\),重传所需的时延就是\(r\)倍的基本退避时间

  4. 当重传16次仍不能成功时丢弃帧,并向高层报告

以太网利用率 \(S_{max}=\frac{T_0}{t+T_0}=\frac{\frac{T_0}{T_0}}{\frac{T_0}{T_0}+\frac{t}{T_0}}=\frac{1}{1+\alpha}\) \(t,T_0\)分别为传输时间和发送时间

  • 根据点对点信道和广播信道的不同,数据链路层分为使用点对点信道的数据链路层和使用广播信道的数据链路层

  • 点对点信道的数据链路层,对应的协议是PPP协议,使用ppp协议建立信道的过程如下

    • 设备之间没有链路,为链路静止状态
    • 设备之间建立物理链路,PPP进入链路建立状态
    • LCP进行配置协商,协商成功为建立LCP链路,进入鉴别状态,失败则返回链路静止状态
    • 已鉴别成功则进入“网络层协议”NCP配置协商,协商成功则链路打开
    • PPP协议有自己的帧格式
  • 广播信道的数据链路层,对应的协议是CSMA/CD协议,又叫载波监听多点接入/碰撞检测协议

    • 物理设备是集线器,其工作层为物理层

    • MAC帧格式如下

      目的地址源地址类型数据(IP数据报)FCS
      66246-15004
    • 为了使得接收端能够实现快速同步,在发送端的MAC子层向下传递到物理层时候,还要在首部再添加8字节,其中前7字节是前同步码,还有一字节作为帧定界符

无效帧:

  • 帧的长度不是整数个字节
  • 用收到的帧检验序列查出有差错
  • 数据字段的有效长度不在46-1500B之间
  • 有效的MAC帧长度不在64-1518字节之间
  • 对于无效的MAC帧就简单丢弃,以太网不负责重传
  • 帧之间的最小间隔是9.6\(us\),为了使得刚收到数据帧的站接收缓存处理,为接受下一 帧做准备
  • 10Mb/s的以太网争用期为51.2us,512比特时间,总线长度不超过5120m,但考虑到其他因素如信号衰减等,以太网规定总线长度不能超过2500m
  • 最小帧长为64B即512bit,避免在发送方已经发送完数据不再检测帧碰撞,而另一方的发送方未检测到有主机在发送数据而发送自己的数据,从而导致碰撞,但是之前的发送方已经不再进行检测,并不会知道自己发送的数据发生了碰撞,不会对发生碰撞的帧重发。
  • CSMA/CD有线网 CSMA/CA无线网
  • 争用期2t

生成树(STP)解决网络环路(广播风暴):Spanning Tree Protocol

在增加冗余链路提高网络可靠性的同时避免网络环路image-20221230093236961

image-20221230093258966==广播风暴后果:消耗网络资源,使得网络无法正常通讯;主机要收到重复的帧消耗主机资源;交换机的帧交换表在错误记录里震荡==

1.选一个交换机作为根交换机,网桥ID最小,取值越小优先级越高默认0-61440,步长4096,默认32768,网桥ID由两部分组成,包括优先级和MAC地址

网桥ID 
优先级MAC地址
  • 若优先级取值小,则网桥ID就越小
  • 若优先级相同,则比较MAC地址,从MAC地址的左侧开始一次比较,数值小的网桥ID就小

2.选出根端口

在每一个非根交换机上选出一个根端口

  • 端口到根交换机的路径成本最小
  • 对端网桥ID最小
  • 对端的端口ID最小(优先级和端口号0-240-16,默认128)

3.选出指定端口并阻塞备用端口

  • 根交换机的所有端口都是指定端口
  • 根端口的对端一定是指定端口
  • BPDU转发端口到根交换机的路径成本最小
  • 本端的网桥ID最小
  • 剩余端口为备用端口

image-20221230095219746

image-20221230095830840

image-20221230095928679

交换机可以绑定接入到指定端口的物理机MAC地址,从而实现网络接入安全

网路层

端系统实现网络可靠,例如快递不需要每个分拣中心都拆开看

网络层向运输层提供的服务:虚电路、数据报(现在)

image-20230101082407822

IP、ARP、ICMP,IGMP

image-20230101083619483

IP地址

ip地址192.168.1.20 
网络ID192.168.1主机地址:20

image-20230101084402149

image-20230101084953724

ABCD
0-127128-191191-223224-239

可用地址

ABCD
1-126128-191192-223 

路由器不同端口必须是不同网段地址

127.0.0.1 本地环回地址

169.254.0.0 自动获得错误地址

保留的私网地址

10.0.0.0

172.16.0.0—–172.31.0.0

192.168.0.0—–192.168.255.0

主机部分全0表示一个网段全1表示广播地址

子网划分

image-20230101093114606

  • 写出子网地址范围
  • 确定子网掩码
  • 网关一般是第一个地址
  • image-20230101094244538

image-20230101094352651

计算机的网关就是默认路由,一台计算机有多个网卡, 如果设置多个网关回由于负载均衡导致丢包

动态路由协议

  • RIP 最早 周期性广播 30s 最佳路径 跳数(带不看宽)16跳最多,超过认为不可达
  • OSPF 带宽计算最短路径 翻转子网掩码 迪杰斯特拉 支持多区域 触发式更新 最多支持二级区域
    • 三个表
      • 邻居表 hello
      • 链路状态表
      • 计算路由表 无环路
network 172.16.0.0  0.0.255.255
      192.168.0.0/30    0.0.0.3

外部网关协议BGP:连接各个自治系统,区域之间通信

BGP协议路由信息信息数量不是很多,BGP发言人数目不多,路由选择相对简单,BGP协议支持CIDR变长子网,BGP建立时交换整个路由表但之后交换变化部分

IGMP 组播、多播 udp

TCP: 可靠传输、流量控制、 避免网络用塞

TCP:面向连接,三次握手,全双工通信,面向字节流

可靠传输:停止等待协议 ,自动重传请求ARQ,协议简单但是信道利用率低发送时间/总时间

VLAN

image-20230121100454500

1.1 主机A发送广播帧,交换机1对广播帧打标签,由于端口1的PVID = 1,所以VID = 1,交换机2端口对于广播帧去标签转发到主机B,Trunk端口5的PVID = 1,也对广播帧进行去标签转发到交换机2,交换机2的端口5的PVID = 2,对于受到的广播帧打标签VID = 2,交换机2的端口3和4的PVID = 2,交换机2对于广播帧去标签转发到交换机2的端口3和4。

综上位于vlan1的主机A发送的广播帧正确发送到了主机B,错误发送到了主机G和主机H

1.2 主机C发送广播帧,由于主机C的PVID = 2,所 以交换机对于主机C发送的广播帧打标签VID = 2,主机D的PVID = 2,且和主机C位于同一交换机,交换机1对于广播帧去标签转发到端口4,广播帧正确发送到主机D。交换机1端口为Trunk端口,且PVID = 1,所以对于PVID = 2的广播帧直接转发进入交换机2,交换机2的端口5为Trunk端口,交换机2的端口3和端口4的PVID = 2,交换机2对于该广播帧进行去标签转发到端口3和端口4,主机G和主机H正确接收到主机C发送的广播帧。

综上,位于vlan2的主机C发送的广播帧正确转发到了主机D,主机G和主机H。

2.1 主机A发送的广播帧被正确发送到主机B、主机E和主机F

2.2 主机C发送的广播帧被正确发送到主机主机D,错误发送到主机E和主机F。

3.1 主机A发送的广播帧被正确发送到主机B、主机E和主机F。

3.2 主机C发送的广播帧被正确发送到主机D、主机G和主机H。

4.1 主机A发送的广播帧被正确发送到主机B、主机E和主机F。

4.2 主机C发送的广播帧被正确发送到主机D、主机G和 主机H。

综上,互联的Trunk端口的PVID值不相等,可能造成错误转发

image-20230121103023368

image-20230121103221739

image-20230121131718874

192.168.252.0

192.168.252.1

192.168.

NET IDNUMaddressCIDER
N163(64)192.168.0.0-192.168.0.63192.168.0.0/26
N223(32)192.168.0.64-192.168.95192.168.0.0/27
N313(16)192.168.0.96-192.168.0.111192.168.0.0/28
N44(4)192.168.0.112-192.168.0.115192.168.0.0/30

RIP距离16表示目标网络不可达

image-20230121155045707

假设在N1出现故障后R2的报文先到达image-20230121155207892

距离向量算法不能避免网络环路

RIP 依赖于UDP

OSPF 依赖于IP 考研中属于网络层

BGP 依赖于TCP

image-20230121162814542

IPV4首部长度以4B为单位,片偏移以8B为单位,必须为整数

协议字段:17UDP 6TCP

标识:用于区分属于同一个数据报的分片

标志:DF1标识不允许分片0标识允许分片

MF:1标识本分片后面还有分片0表示本分片是最后一个分片

image-20230121195604090

image-20230121230628063

image-20230121233314455

SYN为1的报文不携带数据

SYN-SENTLISTEN
 SYN-RCVD
ESTABLIAHED 
 ESTABLISHED
ESTABLISHEDESTABLISHED
FIN-WAIT-1 
 CLOSE-WAIT
FIN-WAIT-2 
 LAST-ACK
TIME-WAITCLOSED
CLOSED(2ml) 

TCP采用面向字节流的方式 UDP面向数据报

DHCP UDP C:68 S:67 广播DHCP发现报文 事务ID MAC地址

IMAP: 143 POP3:110

SMTP:只支持ASCII码 MIME —->ASCII

image-20230123095842045

The network order is consistent with big endian order.

参考链接:

文档信息

Search

    Table of Contents