1.TCP\UDP的区别
TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
UDP(User Datagram Protocol用户数据报协议)是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
区别:
- TCP面向连接,UDP面向非连接即发送数据前不需要建立链接
- TCP提供可靠的服务(数据传输),UDP无法保证
- TCP面向字节流,UDP面向报文
- TCP连接是点对点的,UDP支持多对多通信
- TCP头部20字节,UDP头部8字节
- UDP没有拥塞机制,因此网络出现拥堵不会使源主机的发送效率降低
2.HTTP中GET和POST的区别
从原理性看:
- 根据HTTP规范,GET用于信息获取,而且应该是安全和幂等的
- 根据HTTP规范,POST请求表示可能修改服务器上资源的请求
区别:
- GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中,POST把提交的数据则放置在是HTTP包的包体中
- POST不能缓存,参数不会保存在浏览器历史中,GET则相反
- GET只能传送ASCII 字符,POST没有限制可以传送二进制数据
3. HTTP和HTTPS的区别
HTTPS = HTTP + SSL
SSL协议提供的服务主要有:
- 认证用户和服务器,确保数据发送到正确的客户机和服务器;
- 加密数据以防止数据中途被窃取;
- 维护数据的完整性,确保数据在传输过程中不被改变。
4.在浏览器中输入网址之后执行会发生什么?
- 查找域名对应的IP地址。这一步会依次查找浏览器缓存,系统缓存,路由器缓存,ISPNDS缓存,根域名服务器
- 浏览器向IP对应的web服务器发送一个HTTP请求
- 服务器响应请求,发回网页内容
- 浏览器解析网页内容
5.拥塞控制
- 慢启动和拥塞避免算法(拥塞窗口和慢启动门限)
- 快速重传和快速恢复算法
6.流量控制
滑动窗口:TCP采用大小可变的滑动窗口进行流量控制,窗口大小的单位是字节。 发送窗口在连接建立时由双方商定。但在通信的过程中,接收端可根据自己的资源情况,随时动态地调整对方的发送窗口上限值