The invention discloses a method for sending data from the server push includes: responding to the client to send the TCP request to establish TCP channel and client; received by the client via the TCP channel transmission of data, the data included the client's IP address and UDP address and UDP port IP port; the establishment of the client and the UDP channel based on the content via the UDP channel; and push data to the client.
【技术实现步骤摘要】
推送数据的方法及装置
本公开涉及一种推送数据的方法及装置,具体地为基于TCP信道和UDP信道来推送数据。
技术介绍
泛娱乐类的视频APP中有大量消息需要推送,如新闻类消息、个性化消息、主播上线、好友之间发消息等等。通常的做法是在客户端和服务端之间维持一个TCP长连接,如果服务端有消息即可在该TCP长连接上进行推送。当前通用的做法是在客户端和服务端之间维持一个TCP长连接,所有消息都在该TCP长连接上传输。TCP是一种面向连接的安全、可靠的传输层协议,但维护大量TCP信道需要消耗较多的资源,并且编写用于TCP信道的网络服务程序的复杂度高,且其运维成本远高于一般程序。维护TCP长连接也会给移动设备带来很大负担:耗电,占用有限的计算能力等。为了解决TCP传输占用资源大的问题,现有技术中可以在客户端与服务端之间建立UDP信道。将客户端的IP地址clientIP、NAPT地址、移动终端号码、邮箱地址、QQ号码、微博用户名等消息通过所建立的UDP信道发送给服务端。然而,在上述方案中虽然采用UDP信道来传输数据可实现数据传输速度快,资源占用少等优点,但UDP是无连接的,可靠性和 ...
【技术保护点】
一种用于从服务端推送数据的方法,包括:响应于客户端发送的TCP连接请求与所述客户端建立TCP信道;接收由所述客户端经由所述TCP信道传输的数据报,其中所述数据报包括所述客户端的IP地址和UDP端口;基于所述IP地址和所述UDP端口与所述客户端建立UDP信道;以及经由所述UDP信道将所述内容数据推送至所述客户端。
【技术特征摘要】
1.一种用于从服务端推送数据的方法,包括:响应于客户端发送的TCP连接请求与所述客户端建立TCP信道;接收由所述客户端经由所述TCP信道传输的数据报,其中所述数据报包括所述客户端的IP地址和UDP端口;基于所述IP地址和所述UDP端口与所述客户端建立UDP信道;以及经由所述UDP信道将所述内容数据推送至所述客户端。2.根据权利要求1所述的方法,接收由所述客户端经由所述TCP信道传输的数据报进一步包括:响应于需要将所述内容数据推送给所述客户端,打开所述服务端的本地UDP端口;经由所述TCP信道将所述本地UDP端口传输至所述客户端;以及接收由所述客户端经由所述TCP信道传输的响应于接收到所述本地UDP端口的所述数据报。3.根据权利要求1所述的方法,还包括:确定是否在预定的时间内从所述客户端接收到了对所推送的内容数据进行响应的响应消息;如果否,则经由所述UDP信道重新将所述内容数据推送至所述客户端。4.根据权利要求1-3中任意一项所述的方法,其中,所述方法还包括接收由所述客户端经由所述TCP信道传输的身份信息以保证数据推送的安全性。5.一种用于推送数据的装置,包括:TCP通信单元,响应于客户端发送的TCP连接请求与所述客户端建立TCP信道;UDP通信单元,接收由所述客户端经由所述TCP信道传输的数据报,并基于所述数据报包括的客户端IP地址和客户端UD...
【专利技术属性】
技术研发人员:王青亮,
申请(专利权)人:北京小度互娱科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。