HTTP基本定义

一、网络的简单定义:

1、http:是www服务器传输超文本向本地浏览器的传输协议。(应用层)

2、IP:是计算机之间相互识别通信的机制。(网络层)

3、TCP:是应用层通信之间通信。(传输层)

IP是允许计算机相互传递消息的机制,在IP协议上加入TCP(传输控制协议)保证数据的正确性。

二、HTTP工作流程:

http://localhost.com:8080/index.html

(1)解析地址:

协议名:http

主机名:localhost.com

端口:8080

对象路径:/index.html

(2)封装http请求数据包

(3)封装成TCP包,建立TCP连接

(4)客户机发送请求命令
(5)服务器响应

(6)服务器关闭TCP连接

三、TCP三次握手

SYN(synchronouns)建立连接

ACK(acknowledgement )响应连接

ESTABLISHED(建立)

(1)客户端想服务器端发送SYN(syn=x)包,进入SYN-SEND状态,等待服务器响应。

(2)服务器接收到客户端的SYN包,必须确认客户端的SYN包(ack=x+1),向客户端发送SYN(syn=y)包,及SYN+ACK包,此时服务器端进入SYN-REV状态。

(3)客户端接收到SYN+ACK包,向服务器端发送确认ACK(ack=y+1)包,同时客户端和服务器端进入了ESTABLISHED状态,完成了三次握手。

确认号:其数值等于发送方的发送序号+1(即接收方期望接收的下一个序列号)。

四、TCP 与 UDP区别

1、TCP

优点:可靠、稳定,TCP传输数据之前会有TCP三次握手建立连接,而且在传递数据时会有确认、窗口、重传拥塞控制机制;传递数据后,会断开连接,来节约数据系统资源。

缺点:慢、效率低、占用资源、易被攻击。TCP建立连接之前要经过三次握手消耗时间,传递数据时,确认机制,重传机制,拥塞机制都需要消耗大量的时间,而且要在每台设备上维护所有的传输连接,事实上,每个连接都会占用系统的CPU、内存等硬件资源。 而且,因为TCP有确认机制、三次握手机制,这些也导致TCP容易被人利用,实现DOS、DDOS、CC等攻击。

2、UDP

优点: 快,UDP是一个无状态的传输协议,所以它在传递数据时非常快。没有TCP的相关的机制,UDP较TCP被攻击者利用的漏洞就要少一些。但UDP也是无法避免攻击的,比如:UDP Flood攻击……

缺点: 不可靠,不稳定 因为UDP在数据传递时,如果网络质量不好,就会很容易丢包。

3、TCP与UDP实际运用情况:

 

TCP: 当对网络通讯质量有要求且整个数据要准确无误的传递给对方,比如HTTP、HTTPS、FTP等传输文件的协议,POP、SMTP等邮件传输的协议。常见使用TCP协议的应用如下: 浏览器,用的HTTP FlashFXP,用的FTP Outlook,用的POP、SMTP Putty,用的Telnet、SSH QQ文件传输

UDP: 当对网络通讯质量要求不高的时候,要求网络通讯速度能尽量的快,这时就可以使用UDP。 比如,日常生活中,常见使用UDP协议的应用如下: QQ语音 QQ视频 TFTP ……

五、HTTP与SOCKET区别

1、HTTP是短连接

2、socket长连接,接口

共同点是用TCP协议

 

 

posted @ 2018-07-20 14:05  吃土  阅读(1557)  评论(0)    收藏  举报