简单了解TCP/IP协议

时间:2021-05-04 05:00:35

# TCP/IP 协议#

----------
简单来理解,TCP/IP 协议,就像是所有计算机都会的一种语言,有了它计算机就可以和其他的计算机做交流。

TCP/IP 协议,拥有四层架构,也就是说就是这四层架构组成了TCP/IP协议,它们按照从上到下,层层包装,分别是应用层,传输层,网络层,物理层。

应用层:其中就有我们经常见到的http,也叫做超文本传输协议,它有三个特点:无连接(每次连接传输数据,数据传输完成后就会断掉连接,不会保持连接),无状态(打个比方,在一个网站登录账户,登录成功后进行下一步操作,又向服务器发送请求,此时的服务器已经忘记你是否已经登录),基于请求响应(你的计算机只有向服务器发送了请求,服务器才会回应,若不发送请求,则服务器永远不会向你返回数据)。

- b/s模式 就是浏览器向服务器发送请求,服务器响应  c/s模式 如果计算机装了指定的客户端,则服务器可以直接向计算机发送数据。

- http请求的格式:可以分为四个部分,1.请求行(get/post url 协议版本)get参数会被拼接在url地址后面 2.请求头:浏览器交个服务器的配置信息(cookie)也包含在内 3.空行 4.请求消息体:post请求的参数将包含在内。

- http响应格式:同样也被分为了四个部分,1.状态行(状态码 状态描述)状态码:100~199服务器状态 200~299正常 300~399资源问题 400~499客户端问题 500~599服务器问题,状态描述则是这些状态的详细信息 2.响应头:服务器交给浏览器的配置信息(cookie是在服务器端被处理然后返还回来),响应头里的内容是不会被浏览器渲染的 3.空行 4.响应消息:浏览器要渲染的内容

传输层:常见的有TCP和UDP协议,TCP协议是需要建立三次握手的:浏览器--->服务器,服务器--->浏览器,浏览器--->服务器,完成这三次通讯才算正式建立连接,因此TCP协议可以保证数据的完整性,但也会出现效率问题,而UDP协议可以解决效率问题,UDP协议不需要建立三次握手,可以直接发送数据,但也无法保证数据的完整,具体按照项目需求使用。

网络层: IPV4协议相当于每一台计算机的地址,但是由于IPV4不够使用,所以IPV6出现了解决了不够使用的问题,端口:通过IP地址找到了指定的计算机,端口则是你实际要访问的应用 端口的取值范围是在0~65535 1000以下的端口通常会被系统使用,因此不要使用1000以下的端口