目录
前言
1、为什么分层?
2、OSI七层参考模型
3、ARP与RARP
4、TCP和UDP区别
5、三次握手 四次断开
6、应用层协议
前言
OSI参考模型,华为五层模型,思科四层模型都是分层的,分层有助于我们将复杂的问题简单化,理解更深层次问题。
1、为什么分层?
将复杂的流程分解为几个功能相对单一的子过程
作用:1、整个流程更加清晰,复杂问题简单化。
2、更容易发现问题并针对性的解决问题。
2、OSI七层参考模型
分层 | 功能 |
应用层 | 网络服务与最终用户的一个接口。 |
表示层 | 数据的表示、安全、压缩。 |
会话层 | 建立、管理、中止会话。 |
传输层 | 定义传输数据的协议端口号(端口号范围 1-65535),以及流控和差错校验。 |
网络层 | 进行逻辑地址寻址,实现不同网络之间的路径选择。 |
数据链路层 | 建立逻辑连接,进行硬件地址寻址,差错校验等功能。 |
物理层 | 建立、维护、断开物理连接。 |
面向用户:应用层、表示层、会话层
承上启下:传输层
面向硬件:网络层、表示层、物理层
端口号可以用来区分相同IP的不同流量。
点到点是网络层面,端到端是传输层面
思科 TCP/IP四层 | 华为 TCP/IP五层 | OSI七层 |
应用层 | 应用层 | 应用层 |
表示层 | ||
会话层 | ||
传输层 | 传输层 | 传输层 |
网络层 | 网络层 | 网络层 |
网络接口层 | 数据链路层 | 数据链路层 |
物理层 | 物理层 |
应用层 | HTTP、FTP、TFTP、SMTP、SNMP、DNS |
传输层 | TCP、UDP |
网络层 | ICMP、IGMP、IP、ARP、RARP |
ICMP:ping 测试网络连通性 traceroute 故障时,路由跟踪到点
IGMP:组播
3、ARP与RARP
ARP:正向解析协议
数据传输通讯地址:源IP、源MAC、目标IP、目标MAC
使用场合:已知目标IP,未知目标MAC时使用
工作原理:PC1已知PC2的IP地址,未知PC2的MAC地址,PC1发送ARP广播给二层交换机,二层交换机收到ARP广播消息后无条件泛洪处理,连接到二层交换机下的所有PC都将接受此消息,每个PC都会把自身的IP和目标的IP进行对比,若一致则接收此广播消息,并回数据包给PC1,PC1接收到返回的数据包后会记录下PC2的IP和MAC地址,记录到AARP缓存表中,若不一致则丢弃处理。
RARP:反向地址解析协议
使用场合:已知目标MAC,未知目标IP时使用。
4、TCP和UDP区别
TCP(传输控制协议):协议号是6
UDP(用户数据报协议):协议号是17
TCP :面向连接的可靠的传输层协议
优点是三次握手、四次分开、分段重组、滑动窗口机制保证数据传输可靠性,缺点是这些机制耗费大量时间,因此效率低。
UDP:面向无连接的不可靠的传输层协议
优点是没有机制保证数据的可靠性,但是效率高。缺点是可靠性不高
TCP三次握手:在传输数据时保证传输管道的可靠性
TCP有重传机制,UDP没有。
数据需要依靠耗费流量大小及传输效率去选择哪些适合TCP哪些适合UDP
常见的语音、视频等这些需要耗费很多流量并且需要效率更高,这些场合需要UDP
而一些应用服务对网络流量宽带要求并不高,可靠性要求较高的这些场合适用TCP
5、三次握手 四次断开
三次握手原理:
客户端向服务器发送SYN同步请求与服务器建立连接,服务器收到此SYN同步请求后,会针对客户端的SYN同步请求进行ACK响应的同时也会发送一个SYN同步请求,当客户端收到服务器发送来的SYN同步请求时,会给予一个ACK响应。
为什么要三次握手?
因为TCP是可靠的传输层协议,它在传输数据前会建立双向数据通信通道,当保证双向数据传输的通道没有问题时,才会发送数据,起到保护数据的作用。
四次断开原理:
客户端向服务器发送FIN断开请求,服务器收到此请求后,回复一个ACK。服务器向客户端发送FIN断开请求,客户端收到此请求后回复一个ACK。
三次握手握手三次为什么断开要四次
数据传输方向是双向的,一个方向的数据通道关闭需要一次请求和一次确认,因此需要断开两次,而我们有两个数据方向,因此要断开四次。
TCP半连接状态是什么情况?
客户机向服务器发送了FIN请求,服务器也给了ACK回应,但是服务器还有数据要向客户机传输,因此服务器没有向客户机发送FIN请求。
6、应用层协议
HTTP:超文本传输协议 TCP-80 主要用于web页面的内容传输。
FTP:文件传输协议 TCP20/21:
21:控制层面:控制用户是否在权限登录,并且登陆后的权限内容。
20:数据层面:主要用来传输数据的,主要是用来公司内的资源上传和下载。
TFTP:简单文件传输协议 UDP-69 主要用于上传和下载小文件,常用于路由器交换机iso系统升级和更新
SMTP:简单邮件传输协议 TCP-25主要用于邮件的发送
POP3:邮局协议 TCP-110 主要用于查看邮件
IMAP4:交互式数据消息访问协议,TCP-143 主要用于下载邮件
SNMP:简单网络管理协议 UDP-161主要用于监控网络设备
DHCP:动态主机配置协议 UDP-67 、68 主要用于给客户机分发IP
DHCP工作原理:
1、客户机向局域网内所有DHCP服务器发送dhcpdiscovery请求,请求获取IP地址。
2、局域网内的服务器接收到dhcpdiscovery请求后,会用dhcpoffer回复客户机一个IP地址及子网掩码。
3、客户机收到dhcp服务器发过来的IP地址后,会选择第一个向我提供地址的服务器的IP地址,并且会发送dhcprequest报文通告给局域网内的所有dhcp服务器,客户机选择了哪个地址,以便其他未被选中的服务器的地址作回收处理。
4、被选中的dhcp服务器会回复客户机dhcpack报文,报文内容包含了IP地址、子网掩码、网关、租期、DNS服务器地址等关键信息,此时客户机就可以使用这个IP地址了。
DHCP更新租期机制:当客户机的租期使用到50%时,会自动向DHCP服务器发送续约请求,若此地址未被使用,将续约成功;若此地址已被使用,将续约不成功,不成功的话将从dhcpdiscovery开始那四个步骤。
DNS:域名解析协议 TCP/UDP -53 主要用于将域名解析成IP地址,或将IP地址解析成域名。