计算机网络知识图谱-考试重点
2021-04-01 14:42:10 0 举报
AI智能生成
登录查看完整内容
计算机网络知识图谱
作者其他创作
大纲/内容
单独的0和1没有意义
多少电信号算一组
每个信号位有何意义
须规定解读方式
位于物理层上方,确定了0和1的分组方式
负责解读电信号0和1组成的分组数据包(即帧)
功能 & 定义
规范电信号分组方式 / 解读方式的协议
一组电信号构成一个数据包(帧)
发送者MAC地址
接受者MAC地址
数据类型
组成:包含数据包的一些说明项
长度:固定18字节
每个字节内容都是0xAA
让接收设备调整接收频率
以便与发送设备频率一致
作用
最初7个字节称序言
标头
内容:数据包的具体内容
min: 46字节
max: 1500字节
长度
数据
固定4个字节,检验序列
检验数据传输是否发生错误
CRC:循环冗余校验码
奇偶校验
类型
尾部
帧组成
min: 64字节
max: 1518字节
整个帧长度
数据过长,须分割成多个帧发送
协议规定
以太网协议
又称硬件地址(物理地址)
网卡出产都有一个唯一的mac地址
长度48位,通常用12十六进制数表示
即是网卡的地址
有了mac地址,就可以定位网卡和数据包的路径
定义
以太网数据包必须知道接收方的MAC地址:标头
向局域网内所有计算机发送
让每台机判断,是否为接收方:读取接收方MAC地址是否与自己一致
原始方式: 广播
转发表
如何将数据包从发送方送到接收方
MAC地址
用户PC和ISP进行通信时所使用的数据链路层系恶意
PPP协议
是只有交换机维护一张mac转发表,还是局域网中每台机都有转发表
mac地址与ip地址
问题
三、数据链路层
光缆
电缆
双绞线
无线电波
通过物理手段将计算机连接起来
规定网络的电气属性,负责传送0和1的电信号
收发点信号
解读成0/1序列
电脑网卡接口
功能
二、物理层
分支主题
数据包结构
物理层
连接同一网络的多个网段
放大信号,扩展网络连接范围
中继器
集中广播式中继设备,数据包发送到与集线器相连的所有节点
对接收到的信号进行整形放大
是一个多端口的中继器
不具备交换功能
易引起广播风暴:同时传送多份数据时造成数据包的冲突问题
缺点
集线器
将两(多)个局域网连起来
数据链路层
除了有中继器,集线器的功能以外,还可以对MAC地址分层
提高了可靠性
只适合于用户信息少量的网络
数据交换时采用的信息传递方式时延高
特点
网桥
根据mac地址进行数据转发
有效抑制广播风暴
转发延迟小,效率高
交换机每个端口属一个冲突域
集线器所有端口都属一个冲突域
与集线器对比
交换机用硬件完成
网桥用软件完成
交换机的前身是网桥
交换机
应用层
协议转换器
实现网络层之上不同协议网络之间的互连
一个网络连接到另一个网络的关口
路由器有多个网关(地址)
网关
连接多个网络的设备
将不同网络的数据信息进行转换
为IP包传输分配最合适的路径
转发决定
背板转发
输出链路调度
数据通道功能
与相邻路由器之间的信息交换
系统配置
系统管理
数据控制功能
网络层
根据IP进行寻址转发数据包
路由器
相关设备
一、基本概念
对方的mac地址
对方的ip地址
1、发送包需要两个地址
同一子网
网关的ip地址
不同子网
2、发送包需判断对方是否在同一个子网络
网络通信就是交换数据包
七、串联总结
email:电子邮件
越靠右域名层次越高,每一层都称为域(www只是Web服务器的名字)
向前增加子域;www.nikkei.co.jp
域名层次
http:访问Web服务器
ftp:在FTP服务器上上传下载文件
浏览器功能:URL也不同
工作在应用层,基于udp协议
基本概念
动态分配IP地址
功能 & 作用
1、每个子网络,会有一台机(DHCP服务器)负责管理本网络的所有IP地址
向dhcp服务器发送一个dhcp请求
申请IP地址和相关网络参数
发出方(本机网卡)MAC地址
未知,填入FF-FF-FF-FF-FF-FF(广播地址)
接收方(DHCP服务器)MAC地址
帧头部(以太网标头)
未知,填入0.0.0.0
发出方ip
未知,填入255.255.255.255
接收方ip
ip头部
68
发出方端口
67
接收方端口
udp头部
以广播形式发送
①发dhcp包
发出方:0.0.0.0
接收方:255.255.255.255
检测到ip
②dhcp服务器接收包
③dhcp服务器读取dhcp包
④分配ip地址
发出方(DHCP服务器)mac地址
已知
接收方(申请主机)mac地址
帧头部
已知,但尚未配置
仍填入255.255.255.255
发出方端口:67
接收方:68
分配给请求端的IP地址和本网络的具体参数
⑤回送一个DHCP响应包
申请步骤
结果:知道自己的IP地址、子网掩码、网关IP地址、DNS服务器IP地址等等参数
2、新的计算机加入网络
DHCP
功能:将网址转为ip地址
从高到低顺藤摸瓜,逐层查找,缓存加快响应(与域名对应,也可能多个域名对应一个服务器)
网络中进行域名解析的一些服务器
DNS服务器
基于udp,应用层
DNS
超文本传输协议,基于 TCP/IP 协议,默认端口:80
对什么(URI)
进行什么操作(请求方法)
生成针对目标web服务器的http请求报文
请求
状态码
头字段
网页数据:文件读取的数据/CGI程序输出数据
回复
实现
Uniform Resource Identifier
统一资源标识符
存放网页数据的文件名:URL
CGI程序的文件名
用字符串表示某一互联网资源
URI
Uniform Resource Locator
统一资源定位符
表示资源的地点(文件)
URL
URL 是 URI的子集
URI vs. URL
只有一行
方法 URI HTTP版本
请求起始行(请求行):方法—想要什么
HTTP版本 状态码 响应短语
回复起始行(状态行):发生什么
是请求/回复最重要的信息
起始行
多行:最后一行是空行
每行含一对键值对:<字段名>:<字段值>—附加信息
头信息
具体的资源
主体:消息体
http协议请求
格式
将特定资源(URI:文件内容/程序输出)传送给客户端
url?变量名 = 变量值
传输一些不重要的数据
从Web服务器获取网页数据
GET
向服务器端提交数据(填写表单-收货地址,问卷等输入框)
使用post,url不再被改写,且数据位于http请求主体
将网页输入框的信息发给Web服务器
POST
传输文件
类似FTP文件上传
要求在请求报文的主体包含文件内容
替换URI指定的服务器上的文件
不带验证机制
PUT
删除URI指定服务器上的文件
与put相反
DELETE
和GET方法一样
获得报文首部
不返回报文主体部分
用于确认URI的有效性及资源更新的日期时间
HEAD
用来查询针对请求URI指定的资源支持的方法
查询支持的请求方法
OPTIONS
追踪路径
TRACE
请求方法类别
可选的请求头字段:请求的附加信息
协议版本
请求方法
请求URI:1条请求消息只能写一个URI
GET方法不需要写数据
POST方法需要
消息实体:客户端向服务器发送的数据
组成
请求报文
状态码(数字):向程序告知执行的结果
用文字向人解释状态码
响应短语
可选的响应头字段
实体主体(网页消息)
响应报文
报文类别
信息性状态码
接收的请求正在处理
1XX
成功状态码
请求正常处理完毕
请求被正常处理
200:ok
请求处理成功
但没有资源需要返回
204:No Content
范围请求
对资源某一部分的请求
206:Partial Content
相关状态码
2XX
重定向状态码
需要进行附加操作以完成请求
永久性重定向
资源的URI已更新
客户端请更新书签引用
301:Moved Permanently
临时性重定向
表示资源的URI已临时定位到其他位置
希望用户本次能使用新URI访问
302:Found
3XX
客户端错误状态码
服务器无法处理请求
服务器无法理解请求
表示报文中存在语法错误
400:Bad Request
表示请求需通过http认证
第一次返回401,本页面需认证
第二次返回401,认证失败
401:Unauthorized
对请求资源的访问被拒绝访问
403:Forbidden
服务器上没有请求的资源
404:Not Found
4XX
服务器错误状态码
服务器处理请求出错
内部资源出现故障
500:Internal Server Error
服务器暂处于超负载或正在进行停机维护
503:Service Unavailable
5XX
资源这里没有,但知道另一个地方有
302:重新定向
找不到想要的资源
404:无法找到(状态码+响应短语)
状态码类别
尽管已做优化,但依然保持无状态特性
每次请求-回复,都重新建立tcp
致使服务器无法知道上次请求和本次请求来自同一个客户端
每次请求都是一个全新的请求
协议自身不对请求和响应之间的通信状态进行保存
无状态
Cookie
使http保持状态
节省流量
防止造成无谓的tcp连接的建立和断开
目的
一次tcp连接后可进行多次请求和响应
持久连接宗旨
一次发送多个请求,不等待响应
管线化
使http持久连接
HTTP
应用层协议
传输层之上,应用层之下
根据域名查询Web服务器IP时,浏览器会使用操作系统Socket库中的解析器(gethostbyname)向DNS服务器发送请求消息
Socket库中包含了很多用于发送和接收数据的程序组件
连接过程
Socket抽象层
直接面对用户,规定应用程序的数据格式
六、应用层
mac和ip解决了在互联网任意两台机上建立通信的问题
表示这个数据包到底供哪个程序(进程)使用的参数
是每一个使用网卡的程序的编号
0到65535之间,0到1023的端口被系统占用
端口
但没有解决在两台机上的进程间建立通信的问题
传输层的由来
顺序控制
重发控制
流量控制
拥塞控制
提高网络利用率
建立端口到端口的通信
建立主机到主机的通信
对比:网络层
源ip
目标ip
协议号
源端口号
目标端口号
五个信息
五个有一个不同,视为其他通信
识别TCP/IP或UDP/IP通信
传输层的功能
定义了发出端口/接收端口
udp数据包全放在IP数据包的数据部分
8个字节
udp数据包总长度不超过65535字节
简单
易实现
优点
数据包发送后,无法知道对方是否收到
可靠性差
用户数据包协议(user datagram protocol)
UDP协议
标头:记录和交换控制信息
TCP数据包没有长度限制
通常tcp数据包不会超过IP数据包
三次会话
每发一个数据包,都要求确认
收不到确认,则重发
可近似认为,是有确认机制的UDP协议
能确保数据不会遗失
可靠性高
过程复杂
实现困难
消耗较多资源
传输速度慢
传输控制协议(transmisson controk protocol)
TCP协议
可靠 —— 不可靠
面向连接 —— 面向无连接
IP电话
多播与广播通信
RIP
基于广播的协议
udp:用于对高速传输和实时性有较高要求的通信
TCP:浏览器/邮件 UDP:DNS查询等收发较短信息
TCP VS. UDP
20:FTP-DATA
21:FTP-CONTROL
22:SSH
23:TELNET
25:SMTP
53:DNS
80:HTTP
常用端口号
传输层协议
1、计算机数据本质是有序的0/1序列
2、0/1序列如以byte为单位,就叫做文本流
背景
实现端到端的可靠通信
确保数据到达的顺序与文本流顺序相符
目标
虚拟了文本流的通信
在不同计算机间进行文本流的交互
发送和接收都有相应的缓冲区
实现形式
保持TCP包的次序
防止片段碎片化
流的要点:次序
收到片段序号为L
则ACK回复片段的回复号为L + 1
1、接收方每收到一个片段后,发送一个ACK回复片段给发送方
2、发送方一定时间内未收到ACK回复,则重新发送该片段
ACK回复 & 重传
接收方通过TCP头部的窗口字段告知发送方最多容纳数据量;注意:
片段位于滑窗中时,表示tcp正在处理该片段
滑窗越大,同时处理的片段数目越多
利用缓存保存下来
期望在一定时间内补充上之前的片段
对于“不那么乱”的片段
拒绝,不发送对应的ack
对于“乱得厉害”的片段
滑动窗口
如何确保可靠 & 顺序
tcp协议并不是每个片段都发送ACK回复
一般利用一个ack回复通知连续多个片段的成功接收
收到片段且应该回复ack时,会故意延迟一段时间
累计ACK回复
滑窗结构
零窗口
实现tcp片段传输的可靠性
超时重新发送
快速重新发送
重新发送机制
重新发送
tcp拥塞控制
出发端口、目的地端口
序号:使数据片段整理成文本流
ack(acknowledge)位:设定后,回复号才有效
说明接收方期待接收的下一个片段
最后接收到的片段序号 + 1
ack回复号
SYN(synchronize)占一位:进行连接,并告知随机初始序号值
tcp片段头部格式
TCP流通信
重传控制
连接管理
滑窗
解决糊涂窗口综合症
发送端有该发送的数据
该发送的数据很少
已发送的数据都已经收到确认应答时
可以发送最大段长度(MSS)的数据时
满足条件则发送
Nagle算法
收发双方点对点通信量的控制
抑制发送端数据的速率,以便接收端来得及接收
点对点的局部性问题
流
防止过多数据注入到网络中
使网络不至于过载
确保通信子网有传送待传数据的能力
前提:网络能承受现有网络负荷
全局性问题
控制网络传输的效率
拥
流量控制 vs. 拥塞控制
慢开始 & 拥塞避免
快重传 & 快恢复
拥塞控制方法
TCP控制
第一个片段序号随机生成
通过SYN片段实现
交换实现形式
连接双方交换初始序号ISN
本质:双方互发含有自己的ISN的syn片段
过程:三次握手
总结
建立连接
两段进程利用该连接进行通信
连结通信
连接终结通过特殊片段FIN
tcp连接允许单向关闭
某端已经可以关闭,但另一端不一定可以
为什么要四次,而不合并
保证A发送的最后一个ACK报文段能够到达B
防止已失效的连接请求报文段 出现在本连接中
为什么要等2MSL
两个FIN
两个ACK
连接双方交换了四个片段
子主题 1
过程:四次握手
FIN = 1, seq = u
断开连接
tcp连接状态管理
tcp连接的建立与断开
五、传输层
单纯靠mac地址,广州的网卡即可找到北京的网卡
多个局域网无法顺畅连接
交换机mac地址与局域网内的计算机mac地址毫无关联
判断数据包是否在该局域网,需遍历转发表或广播
即无类似ip地址的网络号设计
要么维护一张很大的转发表
要么造成广播风暴
一旦网络中的计算机太多
mac地址的设计无层次性
mac地址本身只与产商有关
mac地址与所处网络无关
mac地址做不到的原因
网络层解决了该问题
寻找问题的方案:必须区分哪些mac地址属于同一个网络
MAC地址绑定在网卡上
ip是管理员/运营山分配
mac地址与ip地址逻辑上无联系
网络层由来
引进一套新的地址
区分不同的计算机(mac地址)是否属于同一个子网络
mac则将数据包送到该子网络中的目标网卡
先ip选择网络,再mac选择目标网卡
寻找确定计算机所在的子网络
网络层的作用
规定网络地址的协议
1、为每台计算机分配ip地址
2、确定哪些地址在同一个网络
3.不同的“帧”统一转成“IP”数据包:网络数据被切割成小块(数据包)
IPV4
IPV6
协议类别
A
B
C
D
E
地址分类
0.0.0.0 -- 255.255.255.255
32位组成
地址分网络号、主机号
特点(主要讨论IPv4)
判断两台计算机是否属于同一个子网络
将ip地址的网络部分全部置1,主机部分置0
每个ip有一个子网掩码
ip地址与各自的子网掩码进行AND运算
结果相同则在同一网络
反之,不在同一网络
将两个and运算结果进行比较
如何判断两个ip地址属同一网络
子网掩码
划分子网
CIDR
网络地址转换
专用网络地址 转 公用地址
在局域网中使用私有地址,联网时转而使用全局ip地址的技术
大大节省ip地址的消耗
隐藏内部网络结构,降低内部网络受攻击的风险
10.0.0.0 - 10.255.255.255
A类: 1个
172.16.0.0 - 172.31.255.255
B类:16个
192.168.0.0 - 192.168.255.255
C类:256个
私有ip地址网段
NAT
VPN
相关概念
IP协议
固定长度,20字节
ip协议的版本
占4位
版本
占四位,最大进制数值是15
一个32位字长是4字节
15 * 4 = 60字节
1111
5 * 4 = 20字节
0101
例
该字段所表示数的单位:32位字
首部长度
首部长度 + 数据长度
占16位,最大长度 2^16 - 1 = 65535字节
总长度
占16位
每产生一个数据报就加1
并不是序号
一个计数器
标识
占三位,目前只有两位有意义
1:表示后面还有分片
表示后面没有分片
该片为最后一片
0
最低位记为MF
不允许分片
1
允许分片
中间位为DF
标志
占13位
以8个字节为偏移单位
指出该片在原分组中的相对位置
每个分片长度是8字节的整数倍
片偏移
只校验分组的首部
不校验数据部分
首部检验和
占8位
数据报在网络中可通过的路由器数的最大值
TTL被减为0,则该分组必须被丢弃
生存时间TTL
6:TCP
17:UDP
指出分组是使用何种协议
协议
4字节
源地址字段
目的地址字段
首部格式重要字段
首部长度:4B
总长度:1B
片偏移:8B
三个长度标记
首部前半部分
可选字段,长度可变
提供错误检测及安全等机制
首部后半部分
长度为20 - 60字节
标头(首部)
最长65515字节
IP数据包总长度最长为65535字节
IP数据包直接放在以太网数据包的“数据”部分
需通过路由器的接力
为IP包指明路线
每个主机和路由都存在有一个路由表
BGP
路由选择算法:生成路由表
IP数据包传输
IP数据包
在局域网中,通过目标ip地址得到目标mac地址的协议:广播的形式
ARP协议
ip协议的补充
介于网络层和传输层
icmp包封装在IP包中
基于ip协议
传输网络诊断信息:错误信息和各种控制信息
源主机向目的主机传送数据过快
目的主机无法快速处理
此时发送该类型ICMP包,请求源主机温柔点~
源头冷却
路由器接收到一个没法进一步接力的ip包时发出该类型ICMP包
目的地无法到达
TTL(IPv4)随经过的路由器而递减
当TTL值减为0时,IP包超时
超时
路由器收到不应该收的ip包
此时路由器向源主机发送该类型ICMP包
提醒源主机修改路由表
重新定向
错误信息
ping
1、使用ping命令
2、向目标主机发送ICMP包(Echo询问类型)
3、目标主机接收到ICMP包
4、目标主机回复ICMP(Echo询问类型)
使用流程
回音
咨询信息
ICMP包类型
ICMP协议
路由器之间不断交换路由信息
基于距离向量的路由选择协议
只适用于小型互联网
优劣
仅和相邻路由器交换信息
交换的信息:自己的路由表
按固定时间间隔交换路由信息:30秒
刚工作时,只知道直接连接的网络的距离
若干次更新后,所有路由都知道各个网络的路径地址
工作原理
通过路由收敛,得到正确的路由选择信息
开放最短路径优先
克服RIP缺点
原理简单,实现复杂
向域内系统所有路由器发送信息
与本路由器相邻所有路由器的链路状态
发送的信息
链路状态发生变化时,用洪泛法发送信息
所有网络的距离
下一条路由器
RIP知道
全网的拓扑结构
RIP不知道
全局
OSPF更新过程收敛得快
与RIP的不同
OSPF
内部网关协议IGP
外部网关协议EGP
路由选择协议
相关协议
四、网络层
计算机网络知识图谱
0 条评论
回复 删除
下一页