(即时通讯)XMPP基础

客户端-客户端数据传输过程

应用层协议:HTTP(是一种无状态协议)

GET/POST请求的区别:GET没有请求体
HTTP(是一种无状态协议)服务器不会去记住你已经请求过就不会给你返回数据,但是第一次请求返回的数据会包含Cookie,接下来访问服务器会带上Cookie,Cookie记录了访问过的数据状态,服务器会根据Cookie判断,要是数据相同,就不返回数据。

传输层协议:TCP/UDP

TCP: 客户端A发送的数据以多个数据报的形式发送出来,客户端B接收的每个数据报进行检验标识,如果某个数据报发生错误,此数据报会被丢弃,对方会重发,保证数据接收成功。
TCP建立连接的握手:


三次握手.png

UDP: 用户数据报协议,没有超时重发,没有数据校验,速度很快,允许数据丢失。

socket(应用程序和网络之间的应用编程接口)

socket负责对某个服务的数据进行收发,每一种服务都打开一个Socket,并绑定在一个端口上,不同的端口对应不同的服务。
只要Socket连接,没有断开,就是长连接。(服务器一直持有这条通道,消耗就比较大)

Paste_Image.png
GCDAsyncSocket

socket两种连接方式:TCP/UDP
在github上面下载CocoaAsyncSocket框架:下载地址

Paste_Image.png

1.客户端一连接成功服务器,就断了,服务器要保持连接就要持有客户端的连接(Socket)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 即时通讯系列阅读 即时通讯基础 即时通讯:XMPP基础 即时通讯:XMPP项目实践-微聊 Smack类库最好的学习...
    JackChen1024阅读 3,744评论 0 11
  • 网络编程 一.楔子 你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运...
    go以恒阅读 2,055评论 0 6
  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,087评论 0 8
  • 1.TCP报头格式 UDP报头格式 TCP报头格式 UDP报头格式 具体的各部分解释看 TCP报文格式详解 - ...
    杰伦哎呦哎呦阅读 2,493评论 0 5
  • 公园里邂逅一株向日葵于是 我把它慢慢地连根拔起谨慎移植入小小盆栽里捧进窄窄的卧室细心呵护浇水施肥 渴望它茁壮成长为...
    善南阅读 214评论 2 6