OSI七层模型:
物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
TCP/IP四层模型:
网络接口层、网络层、传输层、应用层
物理层:为上层协议提供了一个传输数据的可靠的物理媒体,中继器 和 集线器
数据链路层:帧是数据链路层的传输单位,主要作用:物理地址寻址、数据成帧、流量控制、数据检错、重发;主要协议:以太网协议,相关设备,网桥和交换机
网络层:实现两个主机之间的数据传输,作用:路径选择、路由和逻辑寻址;最重要的协议是IP,IP提供无连接的数据传输,主要包括的协议lIP 、ICMP、ARP 设备:路由器
传输层:端到端传输,提供可靠和不可靠的传输,包括的协议:TCP UDP 设备;网关
应用层:FTP,DNS、Telnet、SMIP、HTTP、WWW、
TCP VS UDP :
TCP面向连接的,UDP不需要连接
TCP提供可靠数据传输,UDP不能保证
TCP传输速度慢,UDP快
TCP使用校验和,确认和重传机制来保证可靠传输,TCP使用滑动窗口机制实现流量控制,通过动态改变窗口大小进行拥塞控制;
TCP 和UDP的应用场景:
TCP:要求数据是可靠无误的,比如说HTTP、HTTPS、FTP等传输协议
UDP:强调传输性能而不是传输完整性时,比如说QQ语音,视频等
TCP 和 UDP****对应的协议:
TCP:FTP,文件传输协议,使用21端口
Telnet,远程登录窗口,23端口
SMTP,邮件传送协议,25号
POP3,用于接收邮件,110端口
HTTP,web服务器传输超文本到本地浏览器,80端口
UDP:DNS,域名解析服务,53端口,
SNMP,简单网络管理协议,161端口,
TCP中的流量控制和拥塞控制:
流量控制:主要是针对端到端的传输中控制流量大小并保证传输可靠性
拥塞控制:
慢启动(指数增加) 窗口达到阈值时 采用拥塞避免(加法增大),达到网络拥塞的值,就会。。。。。
网络拥塞:1) 连续收到三个重复的ack 阈值减少到当前的一半,此时的窗口大小和阈值一样,进入用塞避免阶段
2)超时 将阈值减小到当前的一般,窗口的大小重现设为1,开始慢启动。
TCP 三次握手:
1、 客户端向服务器端发送一段报文,标记位SYN = 1;表示请求建立连接,seq=x
2、 服务端接收到客户端的报文后,返回一段报文,SYN = 1 ACK = 1,seq=y;ack = x+1
3、 Ack=1 seq = x+1;ack = y+1
TCP四次挥手:
1、 发送FIN =1 ;表示请求释放连接,seq= u;
2、 ACK = 1;seq = v;ack = u+1
3、 FIN = 1;ACK=1;seq= w;ack-= u+1;
4、 ACK = 1,seq = u+1;ack = w+1
HTTP 1.0 VS HTTP 1.1
HTTP 1.0:默认使用的是短连接,也就是说客户端与服务器每进行一次HTTP操作,就要建立一次连接,任务结束就中断连接
HTTP1.1:默认使用长连接,建立连接后,执行完一次操作不会立即关闭连接,但是也不是永久保持连接,有一个保持时间
HTTP VSHTTPS
https协议需要ca申请证书,需要一定的费用
CA全称Certificate Authority,通常翻译成认证权威
http是超文本传输协议,信息是明文传输,hhtps是具有安全性的加密传输协议
http和HTTPS是完全不同的连接方式,端口号也不一样,80 443
http的连接很简单,是无状态的,HTTPS协议是有SSL+HTTP协议构建的可进行加密传输,身份认证的网络协议,更加安全