客户端-客户端数据传输过程
应用层协议:HTTP(是一种无状态协议)
GET/POST请求的区别:GET没有请求体
HTTP(是一种无状态协议)服务器不会去记住你已经请求过就不会给你返回数据,但是第一次请求返回的数据会包含Cookie,接下来访问服务器会带上Cookie,Cookie记录了访问过的数据状态,服务器会根据Cookie判断,要是数据相同,就不返回数据。
传输层协议:TCP/UDP
TCP: 客户端A发送的数据以多个数据报的形式发送出来,客户端B接收的每个数据报进行检验标识,如果某个数据报发生错误,此数据报会被丢弃,对方会重发,保证数据接收成功。
TCP建立连接的握手:
UDP: 用户数据报协议,没有超时重发,没有数据校验,速度很快,允许数据丢失。
socket(应用程序和网络之间的应用编程接口)
socket负责对某个服务的数据进行收发,每一种服务都打开一个Socket,并绑定在一个端口上,不同的端口对应不同的服务。
只要Socket连接,没有断开,就是长连接。(服务器一直持有这条通道,消耗就比较大)
GCDAsyncSocket
socket两种连接方式:TCP/UDP
在github上面下载CocoaAsyncSocket框架:下载地址
1.客户端一连接成功服务器,就断了,服务器要保持连接就要持有客户端的连接(Socket)