HTTP Tunnel在基于SIP协议的即时通信系统中的应用

时间:2022-09-07 07:52:30

HTTP Tunnel在基于SIP协议的即时通信系统中的应用

【摘要】随着机关、企事业单位保密意识的提高,对数据安全和网络安全的重视,人们对防火墙访问规则等安全策略的要求越来越严格,同时也限制了其基于计算机的各种应用,阻碍了其业务的发展。本文采用HTTP Tunnel实现对防火墙的穿越,将TCP、UDP等非HTTP数据类型进行HTTP伪装和加密,以隐蔽通信的方式完成应用程序的数据传输,在不改变单位的防火墙等安全策略的前提下,扩展机关、企事业单位的应用,发展业务。

【关键词】HTTP2Sock,Sock2HTTP,隧道

1 引言

基于SIP协议的即时通信系统在企事业单位使用较多,而随着单位保密意识的提高,对数据安全和网络安全的重视,人们对防火墙访问规则等安全策略的要求越来越严格,同时也限制了其基于计算机的各种应用,阻碍了其业务的发展。本文采用HTTP Tunnel实现对防火墙的穿越,将TCP、UDP等非HTTP数据类型进行HTTP伪装和加密,在不改变单位的防火墙等安全策略的前提下,以隐蔽通信的方式完成应用程序的数据传输。

本文重点探讨了HTTP Tunnel技术在以SIP协议为基础的即时通信系统中的应用,并提出相应解决方案和参考应用框架。旨在提升HTTP Tunnel技术的应用范围,加强应用业务的数据安全与网络安全。

2 应用系统框架

HTTP Tunnel被称之为HTTP暗道,原理是将数据伪装成 HTTP的数据形式来穿过防火墙。

基于SIP协议的即时通信系统是以SIP为信令交互协议的即时通信系统,其应用包括HTTP访问、即时消息、语音通信、视频通信等。该系统通过HTTP Tunnel可以不用改变防火前的安全策略,即可实现自由通信。其框架基本包括四个主要方面:

1) 基于SIP协议的即时通信系统,该系统实现基于TCP、UDP、HTTP等协议的即时通信功能;

2) Sock2HTTP服务器,该服务器实现非HTTP协议数据包的HTTP格式转换,通信端口映射,拥塞控制等功能;

3) HTTP Tunnel系统,该系统实现基于HTTP协议的双向的虚拟数据连接,从而穿越防火墙;

4) HTTP2Sock服务器,该服务器实现需要转换为其他格式的HTTP数据,通信端口的映射,拥塞控制等。

其拓扑图如图1:

图1.基于SIP协议的即时通信系统的HTTP Tunnel应用

3应用系统设计

3.1基于SIP协议的即时通信系统

基于SIP协议的即时通信系统主要有两部分组成。OpenSIPS服务器和oSIP客户端。

3.1.1 OpenSIPS

OpenSIPS是成熟的开源SIP服务器,结构非常灵活,其核心路由功能完全通过脚本来实现,可灵活定制各种路由策略,可灵活应用于语音、视频通信、IM以及Presence等多种应用。

其主要功能如下:

 SIP注册服务器/服务器/重定向服务器

 SIP presence agent

 SIP IM Server

3.1.2 oSIP

oSIP是使用标准c编写的SIP协议栈。

主要包括两部分的内容:状态机模块、解析器模块。

 状态机模块的功能:完成对某个事务(注册过程,呼叫过程等等)状态记录,并在特定状态下触发相应的事件或回调函数。

 解析器模块的功能:该模块主要完成对SIP消息结构剖析、SDP消息的结构剖析以及URI结构的剖析;

图2.oSIP结构

oSIP为SIP协议的客户端,OpenSIPS为SIP协议的服务器,二者共同搭建基于SIP协议的即时通信系统。

3.2 Sock2HTTP服务器和HTTP2Sock服务器

当位于内网的SIP终端访问外网,则终端建立连接的端口不一定被防火墙开放,尤其是UDP端口,若使TCP与UDP等消息穿越防火墙则需要相应的协议转换服务器,即Sock2HTTP和HTTP2Sock。

图3.Sock2HTTP与HTTP2Sock

3.2.1功能描述

主要负责分配对应的UDP端口;接收HTTP消息、解码、以UDP的形式发送至目的地址;接收UDP消息、编码、接收终端分配UDP端口的HTTP消息,返回生成的UDP端口;UDP端口与终端的对应管理机制。

3.2.2设计说明

a.建立TCP套接字,与某端口绑定(可配置),监听该端口;

b.接收到请求后,fork子进程处理该请求,请求包括要求分配端口的请求和其他请求两类;

c.处理要求分配端口的请求,将分配的端口返回给终端,保持该TCP链接不断开,直至通话结束或者终端注销。

4结论

基于SIP协议的即时通信系统使用HTTP Tunnel技术,在企事业单位网内外实现自由通信。该应用不仅提升HTTP Tunnel技术的应用范围,更加强应用业务的数据安全与网络安全。系统采用分布式设计,为系统升级和集成提供很好的构架基础,是企事业单位业务和数据穿越防火墙的一种安全和高效的应用。

参考文献

[1] RFC 2543 3261SIP: Session Initiation Protocol.

[2] RFC 2616Hypertext Transfer Protocol -- HTTP/1.1.

[3] W.Richard Stevens TCP/IP详解卷1、卷2、卷3.

注:文章内所有公式及图表请以PDF形式查看。

上一篇:浅谈建筑施工的现场管理有效方案 下一篇:哈尔滨市沿江汇水区雨污分流排水规划研究初探