一文搞懂TCP/IP协议 UDP协议 HTTP HTTPS协议 您所在的位置:网站首页 udp传输工具 一文搞懂TCP/IP协议 UDP协议 HTTP HTTPS协议

一文搞懂TCP/IP协议 UDP协议 HTTP HTTPS协议

2023-02-21 17:03| 来源: 网络整理| 查看: 265

提到TCP/IP协议,首先了解一下OSI七层模型表示层的作用传输层的作用

TCP/IP五层协议

tcp协议三次握手以及四次挥手

三次握手:防止旧的重复连接引起的连接混乱问题。网络比较差的时候 发送方可能连续多次建立连接 如果只有两次握手 接收方知能选择接受或拒绝 但是不清楚这次连接是正常的还是由于网络原因导致的超时请求 如果是网络超时的请求 就可能造成错误连接

三次握手:客户端在接收到服务端ack=x+1的消息后,就能判断当前连接是否为历史连接 如果是历史连接的话就会发送终止报文 如果不是历史连接 就会发送指令给服务器端来建立连接。

四次挥手:即终止TCP连接,就是指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开。

关闭连接时,客户端向服务端发送 FIN 时,仅仅表示客户端不再发送数据了但是还能接收数据。服务器收到客户端的 FIN 报文时,先回一个 ACK 应答报文,而服务端可能还有数据需要处理和发送,等服务端不再发送数据时,才发送 FIN 报文给客户端来表示同意现在关闭连接。

UDP协议

用户数据报文协议

在传输层直接提供单向发送报文的能力 不拆分数据 速度快

Socket

当客户端和服务端进行交互 是在客户端和服务端同时形成socket 两个socket进行交互

处理一次请求的过程

BIO阻塞模式

一次请求首先会进入到PendingQueue,当某一个线程触发Accept,系统会从队列里拿一个请求,在内核空间形成一个Socket文件。此时派发线程会针对每个socket生成一个文件描述符。生成文件描述符以后,派发线程会把文件描述符给到工作线程。工作线程拿到文件描述符以后,去内核拷贝socket。

NIO非阻塞模式

NIO模型不需要工作线程去内核拷贝 Kernel->Buffer->Channel->Buffer

Kernel接收到数据以后 把数据拷贝到Buffer中 Buffer是内存中的一块映射地址 Buffer形成一个Channel对象 最后读数据是从Channel中读

HTTPS协议

用户感知不到加密存在 采用对称加密方式进行传输数据 对于加密的密钥采用非对称加密

1.建立tcp三次握手

2.服务器利用TCP将证书传给浏览器 证书里有网站的公钥

3.浏览器通过本地root C验证网站证书

4.浏览器用证书的公钥加密

5.服务器响应

面试灵魂拷问1:TCP/IP协议在传输过程中做了哪些事情?

1.tcp在传输的时候要进行报文拆分2.给拆分的数据增加协议头3.数据传输 4.路由和寻址5.接收的时候进行数据重组

面试灵魂拷问2:TCP和UDP的区别?TCP和UDP的区别

面试灵魂拷问3:http头部包含哪些内容?

1.请求方式GET/POST

2.主机地址host

3.Conenet-lenth:发送/接收的字节数

4.User-agent :浏览器的信息 以及机器信息

4.Content-type:text/plain application/json请求文本类型

5.origin:请求来源地址

返回值

200代表成功

3xx代表重定向

4xx代表客户端错误

5xx代表服务端错误

面试灵魂拷问4:加密方式了解哪些?

RSA非对称加密,公钥加密,私钥解密。由于需要大数的乘幂求模等算法,运行速度慢,不易于硬件实现。

AES: 对称加密,密钥最长只有256个bit,执行速度快,易于硬件实现。由于是对称加密,密钥需要在传输前通讯双方获知。

MD5加密:是一种不可逆的加密算法,不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被系统重新识别后,才能真正解密。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有