主页 > 网络知识 > 网络技术

网络技术

1、TCP协议和UDP协议

UDP是面向无连接的,不可靠的数据报服务;

TCP是面向连接的,可靠的字节流服务。

HTTP协议是建立在TCP协议之上的一种应用

2、HTTP与HTTPS协议

HTTP连接是一种“短连接”,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求

HTTP协议的不安全性:

HTTP(超级文本传输协议)HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

HTTPS协议的初衷:

(安全套接字层超文本传输协议)HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

HTTPS和HTTP的区别主要如下:

1)https协议需要申请证书,一般免费证书较少,因而需要一定费用。

2)http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

3)http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

4)http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

HTTP使用TCP三次握手建立连接,客户端和服务器需要交换3个包,而HTTPS需要12个包

3、TCP 的三次握手和四次挥手

TCP报文格式图:

1、TCP协议和UDP协议

UDP是面向无连接的,不可靠的数据报服务;

TCP是面向连接的,可靠的字节流服务。

HTTP协议是建立在TCP协议之上的一种应用

2、HTTP与HTTPS协议

HTTP连接是一种“短连接”,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求

HTTP协议的不安全性:

HTTP(超级文本传输协议)HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

HTTPS协议的初衷:

(安全套接字层超文本传输协议)HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

HTTPS和HTTP的区别主要如下:

1)https协议需要申请证书,一般免费证书较少,因而需要一定费用。

2)http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

3)http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

4)http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

HTTP使用TCP三次握手建立连接,客户端和服务器需要交换3个包,而HTTPS需要12个包

3、TCP 的三次握手和四次挥手

TCP报文格式图:

 

(1)序号:Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。

(2)确认序号:Ack序号,占32位,只有ACK标志位为1时,确认序号字段才有效,Ack=Seq+1。

(3)标志位:共6个,即URG、ACK、PSH、RST、SYN、FIN等,具体含义如下:

(A)URG:紧急指针(urgent pointer)有效。

(B)ACK:确认序号有效。

(C)PSH:接收方应该尽快将这个报文交给应用层(传送)。

(D)RST:重置连接。

(E)SYN:发起一个新连接。

(F)FIN:释放一个连接。

为什么需要“三次握手”(客户端和服务端总共发送3个包以确认连接的建立):为了防止已失效的连接请求报文段突然又传送到了服务端,防止server端一直等待,浪费资源。

 

计算机基础知识

 

 

 

 

(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。

(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack (number )=J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。

(3)第三次握手:Client收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给Server,Server检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!