WEB开发中常用的协议和标准

DNS协议

1、DNS协议的作用是将域名解析为IP,网络上的每个站点的位置是用IP来确定的,访问一个网站首先就要知道它的IP,不过数据组成的IP记起来不方便,所以就使用域名来代替IP,由于IP和域名的对应关系经常变化,所以就需要有专门将域名解析为IP的服务器,我们称为:DNS服务器。把域名发给DNS服务器,它就返回相应的IP。在window中可以使用nslookup 或者ping 的命令查看DNS解析后的IP。

2、世界各地有很多DNS服务器,ISP(Internat服务提供商)会提供给我们默认的DNS服务器。

TCP/IP协议

1、TCP和IP协议,通常会把他们放在一起,其实他们是不同的两种协议,作用也不一样。

2、IP协议:是用来查找地址,对应网际互联层,TCP协议:是用来规范传输规则的,对应的传输层。IP只负责找到地址,具体怎么传输是由TCP来完成。类似送快递,货单上填写的地址以及怎么根据填写的地址找到客户,这相当于IP协议的功能。而具体怎么将货物送过去,最后让客户签收签字就相当于TCP协议。

3、TCP传输前会进行三次沟通,我们称为"三次握手",传完数据断开的时候进行四次沟通,我们称为"四次挥手"。

4、TCP的两个序号和三个标志位的含义:

4.1、seq:sequence number的缩写,表示所传数据的序号。TCP传输时的每一个字节都有一个序号,发送数据时会将数据的第一个序号发送给对方,接收方会根据序号check是否接收完整,不完整则会重新传送。保证了数据的完整性。

4.2、ack:acknoledgement number缩写,表示确认号。接收方用来给发送方反馈是否成功接收到数据信息,它的值为希望接收的下一个数据包的起始序号

4.3、ACK:确认位,只有ACK=1的时候ack才起作用,正常通信时ACK=1,第一次发起请求时,因为没有需要确认接收的数据所以ACK为0。

4.4、SYN:同步位,用于在建立连接时同步序号,刚开始建立连接时并没有历史接收的数据,所以ack也就没办法设置。SYN的作用就是,当接收端接收到SYN=1的报文时就会将ack设置位接收到的seq+1的值。SYN会在前两次握手时都为1,是因为通信的双方的ack都需要设置一个初始值;

4.5、FIN:终止位,用来在数据传输完毕后释放连接。


HTTP协议

1、HTTP协议是应用层的协议,在TCP/IP歇息接受到数据后需要通过HTTP歇息来解析后才能使用。

2、HTTP中报文很重要,报文分请求报文和响应报文两种类型,这两种类型都包括三部分:首行,头部,主体。请求报文的首行是请求行,包括方法(请求类型),URL和HTTP版本三项内容,响应请求的首行是状态行,包括HTTP版本,状态码,剪短原因其中原因可有可无。头部保存一些键值对的属性,用冒号分割。主体保存具体内容,请求报文中主要保存Post类型的参数,响应报文中保存页面要显示的结果。

3、请求报文中的方法有:GET、HEAD、POST、PUT、DELETE等

4、响应报文常见状态码:

4.1、1XX:信息性状态码。

4.2、2XX:成功状态码。如:200表示成功。

4.3、3XX:重定向状态码。如:301表示发生重定向。

4.4、4XX:客户端错误状态码:如:404表示没有找到请求的资源。

4.5、5XX:服务端错误状态码:如:500表示系统内部错误。

Servlet和JAVA WEB开发

通过TCP/IP协议和HTTP协议可以得到数据,Servlet的作用是对接受到的数据进行处理并生成要返回给客户端的接口。Servlet指定了java处理WEB请求的标准和规范,我们只需按照标准去做就OK了。但规范自己是不能干活的,所以要想使用Servlet需要有相应的Servlet容器,常见的Tomcat就是一个Servlet容器。


猜你喜欢

转载自blog.csdn.net/qq360694660/article/details/80020197