网络的定义
网络是由网络连接设备通过传输介质将网络终端设备连接起来进行资源共享,信息传递的平台
网络连接设备:路由器,交换机等
传输媒介:网线,光纤,同轴电缆等
网络终端:手机,电脑,智能电脑,IPAD,哑终端等。
OSI七层参考模型
OSI七层参考模型是由OSI国际标准化组织对于计算机领域的定义
其分别为:
应用层 表示层 会话层 |
通过人机交互来实现各种各样的服务 编码 解码 加密 解密 发现 建立 维持 终止会话进程 1根据端口号来区分不同的服务 2动态提供可靠的传输 3数据分段 根据IP地址来进行逻辑寻址 1LIC逻辑链路控制子层——为上层服务提供FCS校验——封装和解封装 2MAC媒介访问控制子层——根据MAC地址进行物理寻址 定义电气电压 光学特性 接口规范 |
传输层 网络层 数据链路层 物理层 |
其中应用层,表示层,会话层为上三层是数据;传输层,网络层,数据链路层,物理层为下四层是数据的传输方式
注释:
端口号:一个端口号代表一个特定的服务且呈永久绑定关系
端口号分为静态端口号和动态端口号
静态端口号:1-1023
动态端口号:1024-65535 提供可靠传输——可靠机制:确认 重启 排序 流控
其中0为保留端口号在网络编程中使用,代表所有端口号。
数据分段:
最大段长度 1480B
最大传输单元 1500B
MAC:MAC地址是物理地址,设备在出场之后烧录在网卡上的。
IP地址:遵行网际网络协议。
分为IPv4和IPv6两种地址。
目前IPv4地址是有限的,已经面临枯竭。IPv6地址地址还未全面普及。
TCP/IP 协议栈(五层模型/四层模型)
物理层:提供物理标准
数据链路层:网络接口
网络层:网际互联
运输层:运输功能
应用层:与ISO七层参考模型的上三层功能相同
TCP/IP协议在运输层有两个运输协议:TCP协议,UDP协议
TCP协议:面向连接的可靠协议
UDP协议:非面向连接的可靠协议
其中TCP协议有三次握手,四次挥手的机制保护
其与ISO七层参考模型的区别
相同点:二者都是模型化层次化
下层对上层提供服务支持
每层协议彼此相互独立
不同:OSI七层参考模型先有协议,TCP/IP先有协议后有模型
TCP/IP协议栈只适用于TCP/IP风格
两者的层数量不同
封装与解封装
先进行封装四层之后到对端解封装
四层端口——端口号分为:Source part(源端口)
Destination part(目标端口)
三层产生IP——IP地址: source IP
Destination IP
二层Fcs校验——MAC地址:source地址
Destination地址
一层为电信号——开始传递
遵循PUD——协议数据单元
四层封装:数据段
三层封装:数据包
二层封装:数据帖
一层封装:比特流
以上所有的都会进行三次握手和四次挥手
三次握手和四次挥手
三次握手的过程
建立TCP连接时,需要客户端和服务端一起发送三个包
SYN——同步序列请求——syn=1时请求连接
序号:ACK——确认(只有ACK=1时才有效) ACK=seq+1 左右序列号无关
Seq(sequence)——序列号——记录发送的次数——厂商固定的或者是随机数
Ctl——控制位——记录此时的状态
FIN——请求断开连接
●第一次:客户端发送初始序号x和syn=1请求标志
●第二次:服务器发送请求标志syn,发送确认标志ACK,发送自己的序号seq=y,发送客 户端的确认序号ACK=x+1
●第三次:客户端发送ACK确认号,发送自己的序号seq=x+1,发送对方的确认号ack=y+1
第二次和第三次挥手几乎是同时进行的
四次挥手的过程
第一次挥手:客户端发出释放FIN=1,自己序列号seq=v,进入FIN-WAIT-1
第二次挥手:服务器收到客户端后,发出ACK=1确认标志和客户端的确认号ack=u+1,自己 的序列号seq=v,进入CLOSE-WAIT
第三次挥手:客户端收到服务期确认结果后,进入FIN-WAIT-2状态,此时服务器发送FIN=1 信号,确认标识ACK=1,确认标识ack=u+1,自己序号seq=w,服务器进入LAST-
ACK
第四次挥手:客户端收到回复后,发送确认ACK=1,ack=w+1,自己的seq=u+1,客户端 进入TIME-WAIT(时间等待)。客户端经过2个最长报文段寿命后,客户端 CLOSE;服务器收到确认后,立刻进入CLOSE状态。
Time-walt 生存时间,防治环路。
为什么只进行三次握手?
进行三次握手是为了保证面向连接
报文的头部
数据——数据头报
TCP头部:
Source port
Destination port
Sequence number
Acknowledgment number
Hander length
Resv——预留位——服务质量
Ctl——控制位——只有0和1——0不生效1生效
UDP的报头:
目的端口,源端口,长度,目的
FTP:文件传输协议
IP的报头:
Ver——version 版本IPv4,IPv6
IHL——IP header length
Service type——服务类型
Packet length——包长度
Protocol——协议号——标识上层协议
TTl——time to live——生存时间——防治环路(环路会造成网络信号不断的循环,从而形成网络的无效传播)
因此TTL——取值范围:0-225(默认每经过一台路由器减1为0时不传递)