文章目录
- 一、系统结构
-
-
-
- OSI的七层模型
- TCP/IP 4层模型
- 折中的五层模型
-
-
- 二、网络层
-
-
-
- IPv4 和IPv6的区别
- IP 第一部数据报
- 子网划分
- 子网掩码
- CIDR
- 私有IP地址
- ==NAT==
- ==ARP==
- 路由算法
-
- 1. 距离-向量算法 (动态)
- 2. 路由算法的链路状态 OSPF(动态)
- 路由协议
-
- 域内路由协议
- 域间路由协议
-
-
- 三、传输层
-
- UDP
- TCP
-
- 3次握手
- 4次挥手
- 为什么要握手三次?两次不行?
- ==TCP粘包==
- 四、应用层
-
- ==DNS==
-
- DNS是什么
- DNS解析过程
- ==HTTP==
-
- http和https的区别
- Http1 和 Http2 的区别
- http响应码
-
- 开头:重定向相关
- 开头:请求错误
- ==baidu.com 的过程==
-
- 域名解析
- 网络应用模型
-
- P2P
- C/S
- B/S
- FTP
- SMTP POP3
一、系统结构
OSI的七层模型
物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
TCP/IP 4层模型
网络接口层、网际层、传输层、应用层
折中的五层模型
物理层、数据链路层、网络层、传输层、应用层
二、网络层
IPv4 和IPv6的区别
:32位
- 分ABCDE类地址(p150页)——子网掩码?
:128位
IP 第一部数据报
- TTL
子网划分
原:IP地址 = {<网络号>,<主机号>} 现:IP地址 = {<网络号>,<子网号>,<主机号>} 为何要子网划分? 原两级地址不够灵活,IP地址的利用率不够高
子网掩码
- 一个接一个地告诉主机或路由器A、B、C子网分为子网
- (p152)子网划分后,不容易看到子网的地址。使用子网掩码后,可以告诉主机或路由器当前子网借用原网络号中的主机号。
- 子网掩码->网络号:子网掩码与IP地址逐位相和,得到子网络号
CIDR
- 128.14.32.5/20,20表示网络前缀的比特数,前20名是网络号
- 子网掩码的概念仍然采用
私有IP地址
- A类:10.0.0.0 ~ 10.255.255.255
- B类:172.16.0.0~172.31.255.255
- C类:192.168.0.0~192.168.255.255 ** 所有路由器的目的地地址都是私人地址IP均不转发数据报告 **
NAT
- (p151)Net Address Transfer 转换网络地址,将专用网络地址转换为公共网络地址
- 内部管理可以隐藏在外部,可以隐藏在外部。IP地址,内部网络IP地址可以重用,大大节省了IP地址的消耗
- 使用本地的主机和外界通信时,NAT转换表中存储{本地存储{IP地址 :端口}到{全球IP地址:端口}映射(这样可以让多个私有IP地址映射到同一个世界IP地址上) :我在家里拜访了一个共同的人IP地址
- 打开家里的网关路由器NAT功能
- 本地网关路由器IP地址映射共有IP,然后发送到因特网,本地IP->共有IP的转换 (网关路由器LAN(局域网)端接收本地发布的IP数据报告,此时本地IP地址映射成全球IP地址,发送到路由器WAN(广域网)端,WAN(广域网)端将此数据发送到因特网
- 当因特网返回数据时,网关路由器将是全球性的IP地址转换成本地IP地址,然后发送到设备,这是地址转换的过程
ARP
(p155)Adress Resolution Protocol:IP地址 -> MAC地址
路由算法
1. 距离-向量算法 (动态)
- 距离:路由器的条数,路由器的条数 1.加到16就不能再加了。此时默认路由无法达到
- 好消息传得快,坏消息传得慢
- 收敛:路由表的信息与网络的实际情况一致
- 与直接相邻的结点做交换路由信息,所有结点都必须参与路由向量交换
2. 路由算法的链路状态 OSPF(动态)
- 主动测试所有邻接结点的状态,并定期将链路状态传播到所有其他结点
- 检查所有结点
路由协议
域内路由协议
- RIP 距离-向量
- OSPF 算法
域间路由协议
BGP:边界网关协议
三、传输层
UDP
无连接,不可靠
TCP
连接可靠
- 客户端-服务器:SYN连接请求
- 服务器-客户端:ACK确认 + SYN连接请求
- 客户端-服务器:ACK确认 目的是为了确认全双工的通道是否能够正常的传输数据
4次挥手
-
客户端-服务器:FIN连接释放请求
-
服务器-客户端:AKC确认 这个时候从客户端-服务器的传输通道已经关闭了
-
服务器-客户端:FIN连接释放请求
-
客户端-服务器:AKC确认 服务器-客户端的通道关闭 3次握手的本质也是4次握手
为什么要3次握手?2次不行?
全双工通道,2次只能确认一个方向的传输是否通畅
TCP粘包
四、应用层
DNS
DNS是什么
p254
- 域名系统,用于域名解析(域名-IP地址之间互相转换的过程)
- 使用UTP协议
DNS解析过程
- 客户机向本地域名服务器发出DNS请求报文
- 本地域名服务器,先在本地DNS缓存中查找请求的域名,有就直接返回
- 没有就以DNS客户的身份依次向根域名服务器、顶级域名服务器、权限域名服务器发送请求,依次查找
- 找到之后,本地域名服务器再将解析到的IP地址返回给客户端
HTTP
基于TCP的
http和https的区别
- 安全:https使用了ssl进行加密
- 端口:http-80 https-443
- https需要有CA整数,http不需要
- http-明文传输,https-加密传输
- http速度比https快
Http1 和 Http2 的区别
http1 是字符串传送,http2 是二进制传送
http响应码
3开头:重定向有关
301和302的区别
- 301:永久转移
- 302:暂时性转移
4开头:请求错误
- 400 : (错误请求) 服务器不理解请求的语法
- 404 (未找到) 服务器找不到请求的网页
- 407 (需要代理授权) 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理
- 408 (请求超时) 服务器等候请求时发生超时
baidu.com 的过程
这个问题主要涉及两个过程
域名解析
- 本地域名服务器
- 根域名服务器、顶级域名服务器、权限域名服务器
网络应用模型
P2P
客户机和客户机之间直接通信
C/S
客户端/服务器:对客户端计算机的性能要求比较高;客户端需要安装和配置相应的软件
B/S
浏览器/服务器:对客户端计算机的性能要求没那么高;客户端不需要安装和配置相应的软件,有浏览器即可
FTP
文本传输协议
SMTP POP3
邮件传输协议 SMTP采用“推”的方式,POP3采用“拉”的方式