初识OSI七层参考模型及TCP/IP协议栈道
osi七层模型,亦称OSI(Open System Interconnection)参考模型,是参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。
它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。七层如下:
应用层——通过人机交互的界面提供各种各样的服务
表示层——编码、解码 加密、解密
会话层——建立、维持、终止会话进程
传输层——UDP:通过端口号区分上层不同的服务 数据分段
TCP:提供可靠的4种传输机制----确认 重传 排序 流控(滑动窗口)
网络层——IP 通过IP地址进行逻辑寻址 路由器
数据链路层——逻辑链路控制层 LLC 为上层提供服务 提供FCS校验
媒介访问控制层 MAC 网桥/交换机
物理层——定义电气、电压、光学特性、接口规范 中继器/集线器
当网络增大时会产生网络风暴则 产生了CSMA-CD技术
常见三层协议
IP 网际网络协议
ICMP 网络控制管理协议 Ping 测试连通性指令
ARP 地址解析协议
四层协议
TCP 传输控制协议
UDP 用户数据报文协议
端口号:
0-65535 1-1023(著名端口) 1024-65535(动态端口、高端口)
常见的应用层服务及端口号
FTP 文件传输协议 TCP 21
Telnet 远程登录 TCP 23
HTTP 超文本传输协议 TCP 80 8080
DNS 域名解析系统 UDP/TCP 53
HTTPS 安全HTTP TCP 443
MSS 最大段长度 以太网 1480B
MTU 最大传输单元 以太网 1500B
PDU 桥协议数据单元
上三层 数据 data message
传输层 数据段 segment
网络层 数据包 packet
数据链路层 数据帧 frame
物理层 比特流 bit
TCP/IP协议栈道
TCP/IP协议栈道与osi既有不同点也有相同点,具体如下:
相同点:1、两者都层次化模型化
2、下层对上层提供服务支持
3、每层协议彼此之间相互独立
不同点:1、OSI先有模型再有协议,TCP/IP先有协议再有模型
2、TCP/IP协议栈只适用于TCP/IP网络
3、层数不同
TCP----面向连接的可靠传输协议
面向连接 三次握手
可靠 可靠的传输机制 确认 重传 排序 流控(滑动窗口)
TCP三次握手
ACK:TCP协议规定,只有ACK=1时有效,也规定连接建立后所有发送的报文的ACK必须为1
SYN(SYNchronization) : 在连接建立时用来同步序号。当SYN=1而ACK=0时,表明这是一个连接请求报文。对*同意建立连接,则应在响应报文中使SYN=1和ACK=1. 因此, SYN置1就表示这是一个连接请求或连接接受报文。
FIN (finis)即完,终结的意思, 用来释放一个连接。当 FIN = 1 时,表明此报文段的发送方的数据已经发送完毕,并要求释放连接。
TCP四次断开
当客户A 没有东西要发送时就要释放 A 这边的连接,A会发送一个报文(没有数据),其中 FIN 设置为1, 服务器B收到后会给应用程序一个信,这时A那边的连接已经关闭,即A不再发送信息(但仍可接收信息)。 A收到B的确认后进入等待状态,等待B请求释放连接, B数据发送完成后就向A请求连接释放,也是用FIN=1 表示, 并且用 ack = u+1(如图), A收到后回复一个确认信息,并进入 TIME_WAIT 状态, 等待 2MSL 时间。
UDP:非面向连接的不可靠传输协议
UDP报头由4个域组成,其中每个域各占用2个字节,具体如下:
1、源端口号。
2、目标端口号。
3、数据报长度。
4、校验值。