CN102291415B - 媒体流处理方法、系统及家庭网关 - Google Patents

媒体流处理方法、系统及家庭网关 Download PDF

Info

Publication number
CN102291415B
CN102291415B CN201110265998.4A CN201110265998A CN102291415B CN 102291415 B CN102291415 B CN 102291415B CN 201110265998 A CN201110265998 A CN 201110265998A CN 102291415 B CN102291415 B CN 102291415B
Authority
CN
China
Prior art keywords
media
termination
home gateway
media stream
outer network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110265998.4A
Other languages
English (en)
Other versions
CN102291415A (zh
Inventor
仇剑书
温锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN201110265998.4A priority Critical patent/CN102291415B/zh
Publication of CN102291415A publication Critical patent/CN102291415A/zh
Application granted granted Critical
Publication of CN102291415B publication Critical patent/CN102291415B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种媒体流处理方法、系统及家庭网关。方法包括:家庭网关接收呼叫请求;家庭网关通过SIP与外网终端协商确定双方接收媒体流使用的端口;家庭网关为第一媒体终端指定接收媒体流使用的端口,建立家庭网关使用的端口与第一媒体终端使用的端口的NAT转发映射关系,并将第一媒体终端使用的端口、外网终端的IP地址和使用的端口发送给第一媒体终端;家庭网关接收外网终端发送的来话媒体流,并根据NAT转发映射关系将来话媒体流转发给第一媒体终端;家庭网关接收第一媒体终端发送给外网终端的去话媒体流并转发给外网终端。采用本发明技术方案可以在家庭网络或类似网络环境中实现可视电话业务,解决了现有技术存在的各种问题。

Description

媒体流处理方法、系统及家庭网关
技术领域
本发明涉及网络通信技术,尤其涉及一种媒体流处理方法、系统及家庭网关。
背景技术
网际协议(Internet Protocol;简称为:IP)电话一般是基于会话初始协议(Session Initiation Protocol;简称为:SIP)实现的。例如:电信运营商的软交换网络就是一个基于SIP协议的专用IP网络,这个专用IP网络既可以支持语音电话也可以支持可视电话。可视电话业务的实现主要包括三部分功能:用户界面、通信信令和媒体处理。其中,可视电话终端是可视电话业务中的主要设备,是用来拨打和接听可视电话的用户端设备。
目前,可视电话主要有两种实现方式。第一种实现方式是单一终端方式。在该方式中,用户界面、通信信令和媒体处理都在同一终端中实现,例如:SIP可视电话机。这种可视电话终端带有网络接口、键盘、受话器、摄像头、显示器、扬声器等部件,可以提供可视电话所需的用户界面,实现语音和视频的采集、编解码与播放等功能,并且在这种可视电话终端的软件中还包含完整的SIP协议栈,通过网络接口连网后,可以连接到SIP服务器,实现可视电话的接续控制功能。而两个可视电话终端之间的媒体流通过实时传送协议(Real-time Transport Protocol;简称为:RTP)完成传输。第二种实现方式是分离式实现方式。在该实现方式中,通信信令与媒体处理和用户界面分离实现。媒体处理与用户界面在用户终端上实现,而SIP协议栈则在另一个设备上实现,用户终端与实现SIP协议栈的设备之间通过媒体网关控制协议(Media Gateway Control Protocol;简称为:MGCP)或H.248协议进行通信,实现SIP协议栈的设备与SIP服务器进行交互,从而共同完成可视电话功能。通常,实现SIP协议栈的设备不是用户终端,而是软交换网络的接入设备,例如:综合接入设备(IntegratedAccess Device;简称为:IAD)。
随着宽带网络的普及和多媒体技术的发展,可视电话技术已经成熟,电信运营商已经开始向公众家庭用户提供这项服务。对于家庭应用来说,用户家庭中可能存在多种终端,例如个人计算机(Personal Computer;简称为:PC)、机顶盒、可视电话、平板电脑、手机等,这些终端都需要上网,家庭网络通过布置家庭网关来解决多终端上网的问题。家庭网关通过提供基于网络地址转换(Network Address Translation;简称为:NAT)的IP转发功能使多个终端都能上网,这样也就使这些终端处于同一个内网(即家庭网络)中。由于内网中的终端没有外网IP地址,从外网不能直接寻址到内网中的终端,这就导致基于RTP协议传送的媒体流无法直接发送到内网终端。现有技术采用一种称为NAT穿越的技术来解决这个问题,但是NAT穿越是一种非标准和不稳定的技术,依赖于家庭网关的实现方法,并不是所有家庭网关都能用同样的方法实现穿越。更为严重的是,当可视电话双方都处在内网中时,还必须通过一个中间代理服务器来实现媒体流的转发,而这个代理服务器很容易成为可视电话实现上的性能瓶颈。由此可见,现有实现可视电话的方案无法很好的适用于家庭网络或是类似网络中的终端。
发明内容
本发明提供一种媒体流处理方法、系统及家庭网关,用以在家庭网络或类似网络环境中实现可视电话业务,解决现有技术存在的各种问题。
本发明提供一种媒体流处理方法,包括:
家庭网关接收呼叫请求,所述呼叫请求包括外网终端的电话号码;
所述家庭网关通过会话初始协议SIP与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口;
所述家庭网关为本网内的第一媒体终端指定接收媒体流使用的第一网内终端端口,建立所述家庭网关端口与所述第一网内终端端口之间的网络地址转换NAT转发映射关系,并将所述第一网内终端端口、所述外网终端的网际协议IP地址和所述外网终端端口发送给所述第一媒体终端;
所述家庭网关接收所述外网终端发送的来话媒体流,并根据所述NAT转发映射关系将所述外网终端发送的来话媒体流转发给所述第一媒体终端,以使所述第一媒体终端通过所述第一网内终端端口接收并处理所述来话媒体流;
所述家庭网关接收所述第一媒体终端发送给所述外网终端的去话媒体流并转发给所述外网终端,所述去话媒体流包括所述外网终端的IP地址和所述外网终端端口。
本发明提供一种家庭网关,包括:
呼叫接收模块,用于接收呼叫请求,所述呼叫请求包括外网终端的电话号码;
协商确定模块,用于通过会话初始协议SIP与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口;
建立发送模块,用于为本网内的第一媒体终端指定接收媒体流使用的第一网内终端端口,建立所述家庭网关端口与所述第一网内终端端口之间的网络地址转换NAT转发映射关系,并将所述第一网内终端端口、所述外网终端的网际协议IP地址和所述外网终端端口发送给所述第一媒体终端;
第一来话流转发模块,用于接收所述外网终端发送的来话媒体流,并根据所述NAT转发映射关系将所述外网终端发送的来话媒体流转发给所述第一媒体终端,以使所述第一媒体终端通过所述第一网内终端端口接收并处理所述来话媒体流;
第一去话流转发模块,用于接收所述第一媒体终端发送给所述外网终端的去话媒体流并转发给所述外网终端,所述去话媒体流包括所述外网终端的IP地址和所述外网终端端口。
本发明提供一种媒体流处理系统,包括本发明提供的任一家庭网关和至少一个媒体终端。
本发明的媒体流处理方法、系统及家庭网关,由家庭网关实现可视电话中的通信信令(即SIP协议栈)功能,由网内媒体终端实现用户界面和媒体处理,在与外网终端完成双方接收媒体流使用的端口协商后,家庭网关为媒体终端分配接收媒体流的端口并建立家庭网关接收媒体流的端口与媒体终端接收媒体流的端口之间的NAT转发映射关系,使媒体流成功在网内媒体终端与外网终端之间传输,在家庭网络或类似家庭网络的环境中实现了可视电话业务。在本发明技术方案中,避免了NAT穿越技术的使用,从而克服了NAT穿越技术在实现可视电话业务时因其自身的非标准和不稳定性导致的缺陷;并且本发明技术方案也不需要中间代理服务器,因此也不再受中间代理服务器性能的限制。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的媒体流处理方法的流程图;
图2为本发明另一实施例提供的媒体流处理方法的流程图;
图3为本发明一实施例提供的家庭网络中的媒体终端作为可视电话的主叫时的媒体流处理方法的流程图;
图4为本发明一实施例提供的被叫流程中通话建立过程的流程图;
图5为本发明一实施例提供的家庭网关的结构示意图;
图6为本发明另一实施例提供的家庭网关的结构示意图;
图7为本发明一实施例提供的媒体流处理系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明一实施例提供的媒体流处理方法的流程图。如图1所示,本实施例的方法包括:
步骤101、家庭网关接收呼叫请求,所述呼叫请求包括外网终端的电话号码。
本实施例中的家庭网关是指布设在家庭网络或类似家庭网络环境中的路由设备。家庭网络中通常具有多种媒体终端,例如PC、机顶盒、可视电话、平板电脑、手机等,这些媒体终端通过家庭网关实现宽带接入。本实施例的家庭网关除了具有路由功能之外,还具有实现可视电话业务中的通信信令的功能。通常可视电话业务中的通信信令是由SIP协议实现的,故本实施例的家庭网关具有SIP协议栈功能。
本实施例的媒体流是指实现可视电话业务中的媒体流,可以是音频流或视频流。如果在一次可视电话过程中,既存在音频流又存在视频流,则音频流和视频流将被视为两种媒体流,由于对这两种媒体流的处理流程是一样的,故本发明各本实施例中的媒体流是指其中一种媒体流。在实现可视电话业务时,家庭网关与家庭网络内(简称为本网内)的媒体终端可以通过扩展已有通信协议,例如MGCP、H.248协议或通用即插即用(universal Plug and Play;简称为:uPnP)协议等进行信息交互。另外,家庭网关与媒体终端之间的通信也可以采用浏览器/服务器(Browser/Server;简称为:B/S)方式,即家庭网关提供Web服务器功能,媒体终端提供Web浏览器功能,以Web交互的方式进行信息交互。再者,家庭网关与媒体终端还可以专门定义一种通信协议来进行信息交互。而家庭网关与外网终端通过SIP协议完成可视电话业务流程。
本实施例的家庭网关可以接收由本网内的媒体终端发起的呼叫请求,也可以接收由外网终端发起的呼叫请求。在本发明各实施例中,将不属于家庭网关所在家庭网络的设备均称为外网终端。本发明各实施例中的外网终端可以是另一个家庭网络中的家庭网关,也可以是另一个家庭网络内的媒体终端,还可以是非家庭网络中的通信设备。
当由本网内的媒体终端发起呼叫请求时,家庭网关具体可以通过扩展后的已有通信协议、B/S方式或专门定义的通信协议来接收本网内的媒体终端发起的呼叫请求。当由外网终端发起呼叫请求时,家庭网关具体通过SIP协议接收外网终端发起的呼叫请求。
步骤102、家庭网关通过SIP协议与外网终端协商确定家庭网关接收媒体流使用的家庭网关端口和外网终端接收媒体流使用的外网终端端口。
当家庭网关接收到的本网内的媒体终端发起的呼叫请求或者外网终端发起的呼叫请求时,就会通过SIP协议执行呼叫建立阶段的流程。其中,在呼叫建立流程中,家庭网关向外网终端通过SIP协议发起呼叫请求,其具体流程可参见国内外相关标准的规定,在此不再赘述。
当呼叫建立阶段完成后,家庭网关与外网终端进入通话阶段。通话阶段也就是建立媒体流的传送通道,并持续进行媒体流数据的采集、传送、编解码和播放的过程。在本实施例中,媒体流采用RTP协议传送,并采用RTP控制协议(RTP Control Protocol;简称为:RTCP)传送媒体流控制参数。RTP协议和RTCP协议是建立在用户数据包协议(User Datagram Protocol;简称为:UDP)基础上的传输协议,由RTP协议和RTCP协议建立起来的UDP传输通道是一个单向传输通道,需要通话双方约定接收媒体流使用的UDP端口号。故家庭网关与外网终端在该通话阶段进行传输媒体流所需参数的协商,其中最主要的是确定双方接收媒体流所使用的端口信息,即确定家庭网关端口和外网终端端口;这里的端口信息主要是指标识端口的端口号,例如约定家庭网关使用家庭网关端口P1接收媒体流,而外网终端使用外网终端端口P2接收媒体流。
步骤103、家庭网关为本网内的第一媒体终端指定接收媒体流使用的第一网内终端端口,建立家庭网关端口与第一网内终端端口之间的NAT转发映射关系,并将第一网内终端端口、外网终端的IP地址和外网终端端口发送给第一媒体终端。
当家庭网关与外网终端通过SIP协议约定好双方接收媒体流使用的端口后,为了能够将外网终端发送的媒体流成功的转发给本网内的媒体终端,家庭网关为本网内接收媒体流的媒体终端(即第一媒体终端)指定接收媒体流的端口(即第一网内终端端口),例如网内终端端口P3,并建立家庭网关接收媒体流使用的端口(即家庭网关端口)与家庭网关为媒体终端指定的接收媒体流的端口(即第一网内终端端口)之间的NAT转发映射关系。同时,家庭网关将第一网内终端端口、外网终端的IP地址和外网终端端口发送给第一媒体终端。其中,家庭网关可以在与外网终端的交互过程中获取外网终端的IP地址。
至此,家庭网络内的媒体终端与外网终端之间的媒体流通道通过家庭网关建立起来了。
步骤104、家庭网关接收外网终端发送的来话媒体流,并根据NAT转发映射关系将外网终端发送的来话媒体流转发给第一媒体终端,以使第一媒体终端通过第一网内终端端口接收并处理来话媒体流。
对于外网终端来说,所能看到的是家庭网关,故外网终端会向家庭网关发送媒体流。对于家庭网关来说,外网终端发送的媒体流被称为来话媒体流。该来话媒体流的目的IP地址为家庭网关的外网IP地址,家庭网关通过约定的家庭网关端口P1接收外网终端发送的来话媒体流。然后,家庭网关根据之前建立的NAT转发映射关系,识别出需要将由家庭网关端口P1接收到的外网终端发送的来话媒体流经过NAT转发到第一网内终端端口P3。第一媒体终端接收到来话媒体流之后对来话媒体流进行处理。在本实施例中,可视电话的用户界面和媒体处理由媒体终端实现,故第一媒体终端对来话媒体流进行处理主要是指对媒体流进行解码、播放和显示等操作。
步骤105、家庭网关接收第一媒体终端发送给外网终端的去话媒体流并转发给外网终端,所述去话媒体流包括外网终端的IP地址和外网终端端口。
从家庭网关或第一媒体终端的角度来看,将第一媒体终端发送给外网终端的媒体流称为去话媒体流。具体的,第一媒体终端在去话媒体流中包括外网终端的IP地址和外网终端端口P2,并将去话媒体流发送给家庭网关,家庭网关通过其NAT模块将去话流媒体的源IP地址替换为家庭网关的外网IP地址后,根据去话媒体流中的外网终端的IP地址和外网终端端口P2将去话媒体流转发给外网终端。
本实施例的媒体流处理方法,由家庭网关实现可视电话中的通信信令(即SIP协议栈)功能,由网内媒体终端实现用户界面和媒体处理,在与外网终端完成双方接收媒体流使用的端口协商后,家庭网关为媒体终端分配接收媒体流的端口并建立家庭网关接收媒体流的端口与媒体终端接收媒体流的端口之间的NAT转发映射关系,使媒体流成功在网内媒体终端与外网终端之间传输,在家庭网络或类似家庭网络的环境中实现了可视电话业务。在本实施例中,家庭网关通过建立家庭网关接收媒体流的端口与媒体终端接收媒体流的端口之间的NAT转发映射关系,并根据NAT转发映射关系将外网终端设备发送给网内媒体终端的媒体流转发给媒体终端,避免了NAT穿越技术的使用,从而克服了NAT穿越技术在实现可视电话业务时因其自身的非标准和不稳定性带来的缺陷;同时,由于NAT转发映射关系的建立,即使外网终端也处于另一家庭网络内部时,本网络内的媒体终端与外网终端之间媒体流的传输也不需要中间代理服务器,也就是说本实施例的媒体流处理不再受中间代理服务器性能的限制。
图2为本发明另一实施例提供的媒体流处理方法的流程图。本实施例基于图1所示实施例实现,如图2所示,本实施例的方法在步骤105之后还包括:
步骤106、家庭网关接收第一媒体终端发送的终端切换请求,所述终端切换请求包括媒体流标识和第二媒体终端的标识。
在本家庭网络与外网终端进行可视电话的过程中,如果用户希望切换进行媒体处理的媒体终端时,可以通过第一媒体终端向家庭网关发送终端切换请求。其中,由于第一媒体终端或者是作为主叫方发起呼叫请求的媒体终端,或者是在外网终端作为主叫方时第一个与外网终端进行媒体流传输的媒体终端,故第一媒体终端是负责对此次通话进行控制的媒体终端。具体的,第一媒体终端在终端切换请求中携带媒体流标识用于标识是哪个媒体流,更为具体的是标识家庭网关正在与哪个外网终端进行媒体流传输;第一媒体终端同时将希望切换到的媒体终端(即第二媒体终端)的标识封装在终端切换请求中,以告知家庭网关后续由哪个媒体终端与外网终端进行媒体流的传输。其中,第二媒体终端的标识优选为第二媒体终端的内网IP地址。
步骤107、家庭网关根据媒体流标识,获取外网终端的IP地址和外网终端端口,并为第二媒体终端指定接收媒体流使用的第二网内终端端口,将NAT转发映射关系中第一网内终端端口替换为第二网内终端端口,并将第二网内终端端口、外网终端的IP地址和外网终端端口发送给第二媒体终端。
当家庭网关接收到终端切换请求后,根据其中的媒体流标识识别出外网终端,获取外网终端的IP地址和接收媒体流使用的外网终端端口。家庭网关根据第二媒体终端的标识确定第二媒体终端,并为第二媒体终端指定其接收媒体流使用的端口(即第二网内终端端口P4),并将NAT转发映射关系中第一网内终端端口替换为第二网内终端端口,从而建立起家庭网关接收媒体流使用的端口(即家庭网关端口)与第二媒体终端接收媒体流使用的端口(即第二网内终端端口)之间的映射关系。然后,家庭网关将第二媒体终端接收媒体流时需要的通道参数,即第二网内终端端口、外网终端的IP地址和外网终端端口发送给第二媒体终端。
步骤108、家庭网关接收外网终端发送的来话媒体流,并根据NAT转发映射关系将外网终端发送的来话媒体流转发给第二媒体终端,以使第二媒体终端通过第二网内终端端口接收并处理来话媒体流。
家庭网关在完成NAT转发映射关系的更新后,就将媒体流的接收映射到了新的媒体终端(即第二媒体终端)。之后,当家庭网关接收到外网终端发送的来话媒体流后,在根据NAT转发映射关系通过NAT转发来话媒体流时,就会将来话媒体流转发给第二媒体终端。第二媒体终端通过第二网内终端端口P4接收来话媒体流,并对来话媒体流进行解码、播放和显示等处理。
步骤109、家庭网关接收第二媒体终端发送给外网终端的去话媒体流并转发给外网终端,所述去话媒体流包括外网终端的IP地址和外网终端端口。
当第二媒体终端接收到家庭网关发送的第二网内终端端口、外网终端的IP地址和外网终端端口等信息,并被指定负责发送家庭网络内的媒体流时,第二媒体终端在去话媒体流中包括外网终端的IP地址和外网终端端口P2,将去话媒体流发送给家庭网关,家庭网关通过其NAT模块将去话流媒体的源IP地址替换为家庭网关的IP地址后,根据去话媒体流中的外网终端的IP地址和外网终端端口P2将去话媒体流转发给外网终端。
本实施例的媒体流处理方法,在建立媒体流通道时,家庭网关建立临时的NAT转发映射关系,使外网终端的媒体流可以顺利到达指定的媒体终端,并且在通话过程中,家庭网关能够根据作为通话控制的媒体终端的终端切换请求修改临时的NAT转发映射关系,可以方便地改变家庭网络内进行媒体流处理的媒体终端,从而使得可视电话中媒体流(即视频流或音频流)的接收方式变得灵活多样。例如:当一可视电话过程中仅存在视频流时,该视频流可以在同一媒体终端上实现,也可以在不同的媒体终端上实现;当一可视电话过程中仅存在音频流时,该音频流可以在同一台媒体终端上实现,也可以在不同的媒体终端上实现;当一可视电话过程中同时存在音频流和视频流时,该可视电话过程中的音频流作为一路媒体流,可以在同一媒体终端上实现,也可以在不同的媒体终端上实现,而该可视电话过程中的视频流作为另一路媒体流,也可以在同一媒体终端上实现,也可以在不同的媒体终端上实现。另外,对于同一可视电话过程中的媒体流(即音频流或视频流),也可以在同一媒体终端上实现,也可以在不同的媒体终端上实现。
图3为本发明一实施例提供的家庭网络中的媒体终端作为可视电话的主叫时的媒体流处理方法的流程图。本实施例可基于图1或图2所示的实施例实现,如图3所示,本实施例的方法包括:
步骤301、第一媒体终端向家庭网关发起呼叫请求,所述呼叫请求包括被叫终端的电话号码。
在本实施例中,第一媒体终端负责发起呼叫,又被称为通话控制终端。第一媒体终端提供用户界面让用户输入被叫终端的电话号码,或者让用户通过通信录选择被叫终端的号码。例如:在采用B/S方式时,第一媒体终端可以从家庭网关获得一个用于拨号的Web页面,用户通过浏览器输入被叫终端的电话号码,点击Web页面上的“拨号”按钮开始拨号。第一媒体终端将被叫终端的电话号码与其它参数(例如:媒体流的编解码算法、视频分辨率、在媒体流处理过程中允许指定由其它媒体终端进行后续处理的能力等)一起传给家庭网关,请求发起呼叫,并等待家庭网关发送事件通知。
步骤302、家庭网关通过SIP协议向被叫终端发起呼叫。
其中,被叫终端主要是指本家庭网络之外的其他具有可视电话功能的终端设备。有关基于SIP协议实现的呼叫控制流程可参考国内外相关标准规范,在这里不再赘述。
步骤303、家庭网关向第一媒体终端发送呼叫成功事件。
在呼叫建立过程中,家庭网关会根据对被叫终端的呼叫结果,向第一媒体终端发送一些事件,例如:通过呼叫成功消息发送呼叫成功的事件或通过呼叫失败消息发送呼叫不成功事件。其中,呼叫成功事件包括:被叫振铃事件,例如通过使第一媒体终端播放回铃音,以提示用户需要等待;被叫应答事件,以告知用户第一媒体终端进入通话阶段,开始媒体流处理。其中,呼叫不成功的事件包括:被叫忙事件,使第一媒体终端需提示用户被叫终端占线,并结束会话;被叫无法接通等。
其中,当第一媒体终端收到呼叫不成功事件时,就会结束此次会话。该操作比较简单,故在本实施例中不做过多说明,本实施例以第一媒体终端收到呼叫成功事件为例。
在整个可视电话流程中,上述步骤301-步骤303属于呼叫建立阶段。
步骤304、家庭网关通过SIP协议与被叫终端协商确定双方接收媒体流使用的端口。
步骤305、家庭网关为第一媒体终端指定接收媒体流使用的端口,同时建立第一媒体终端接收媒体流使用的端口与家庭网关接收媒体流使用的端口之间的NAT转发映射关系。
步骤306、家庭网关将为第一媒体终端指定的接收媒体流使用的端口、被叫终端的IP地址和接收媒体流使用的端口等媒体流传输通道参数发送给第一媒体终端。
步骤307、第一媒体终端通过建立的媒体流传输通道向被叫终端发送去话媒体流。
步骤308、第一媒体终端通过建立的媒体流传输通道接收被叫终端发送来话媒体流。
其中,上述步骤304-步骤308属于通话阶段的流程。通话阶段主要是建立媒体流的传输通道,并持续进行媒体流数据的采集、传输、编解码和播放等的过程。在带视频的通话中,媒体流主要包括:音频流和视频流;在不带视频的通话中,媒体流只有音频流。其中,音频流和视频流属于两种不同的媒体流,每种媒体流又包括两个方向的流:来话方向的媒体流(简称为来话媒体流)和去话方向的媒体流(简称为去话媒体流)。在本实施例中,无论是音频流还是视频流其处理方式均相同,故在具体实施过程中未对音频流和视频流进行区分,也就是说本实施例的媒体流可以是视频流也可以是音频流。
上述步骤304-步骤306主要是媒体流传输通道的建立过程,更为具体的是接收媒体流时的传输通道的建立过程。在本实施例中,媒体流通过RTP协议传输,同时通过RTCP协议来传送媒体流控制数据。由于RTP和RTCP协议都是建立在UDP协议基础上的传输协议,故建立媒体流的传输通道也就是建立UDP传输通道。在本实施例中,数据收发双方(即家庭网关与被叫终端)约定一个UDP端口号,例如:端口5004,当有数据要发送时,数据发送方将对端的IP地址与约定的端口号一起作为寻址信息,向数据接收方发送媒体流数据,以建立起UDP传输通道;而媒体流数据通过IP地址到达接收方,接收方通过端口号识别为RTP或RTCP消息,从而实现媒体流数据的收发。在本实施例中,由于来话媒体流的接收方,即第一媒体终端处在家庭网络内部,需要通过NAT与外部网络连接,从外部网络来的单向媒体流只能寻址到家庭网关,而不能直接寻址到媒体终端。以数据收发双方约定端口号5004为例,也就是说,家庭网关在接收到目的端口号为5004的报文时,不知道将这个端口号为5004的报文转发给家庭网络内的哪个媒体终端。为了使家庭网关能把媒体流数据正确转发到第一媒体终端,本实施例的家庭网关建立一个临时NAT转发映射关系,更为具体的是家庭网关的NAT模块建立一个临时NAT转发映射关系,即将约定的端口号,例如5004与第一媒体终端的内网IP地址建立对应关系,这样就可以使NAT模块成功的将端口号为5004的报文转发给第一媒体终端,而不再像现有技术那样使用NAT穿越技术。
在本实施例中,由于SIP协议栈在家庭网关中实现,故家庭网关的NAT模块很容易获取相关信息并建立临时NAT转发映射关系,并且这种方法建立的临时转发关系十分可靠,可以确保UDP传输通道的顺利建立。
基于上述,对于来话媒体流,家庭网关根据接收来话媒体流的端口的端口号与第一媒体终端的内网IP地址的NAT转发映射关系,可以成功地将来话媒体流转发给第一媒体终端。
对于去话媒体流,第一媒体终端可以直接向被叫终端的IP地址和端口号发送媒体流数据,而家庭网关接收到去话媒体流时,其NAT模块会正确将去话媒体流转发给外网的被叫终端,而不需要额外的操作。
步骤307和步骤308描述了媒体通道建立起来之后,第一媒体终端进行媒体流数据的采集、编解码、传输、播放等操作,这些操作与现有可视电话的处理相同,在此不再赘述。
步骤309、第一媒体终端向家庭网关发送终端切换请求。
在本实施例中,通过改变家庭网关的NAT模块的临时NAT转发映射关系,可以实现在通话过程中切换接收媒体流的媒体终端。具体的,用户在第一媒体终端(即通话控制终端)的用户界面上选择需要改变某个媒体流的接收终端。第一媒体终端向家庭网关发终端切换请求,该终端切换请求中包括媒体流的标识和新媒体终端(即第二媒体终端)的标识。
步骤310、家庭网关为第二媒体终端指定接收媒体流使用的端口号,并将媒体流传输通道的相关参数发送给第二媒体终端。
具体的,家庭网关为第二媒体终端指定接收媒体流使用的端口号,并将第二媒体终端接收媒体流使用的端口号,被叫终端的IP地址和接收媒体流使用的端口号发送给第二媒体终端,以通知第二媒体终端准备接收媒体流。
步骤311、家庭网关通知其NAT模块改变临时NAT转发映射关系,将媒体流的接收映射到第二媒体终端。
具体的,家庭网关的NAT模块将NAT转发映射关系中的第一媒体终端的内网IP地址和端口号替换为第二媒体终端的内网IP地址和端口号,从而实现将媒体流的接收映射到第二媒体终端。
步骤312、第二媒体终端接收并处理来话媒体流。
其中,第二媒体终端除了负责接收来话媒体流之外,还负责向外网终端发送去话媒体流。也就是说,一旦完成切换,该媒体流的接收与发送将由切换后的媒体终端负责。
步骤313、第一媒体终端向家庭网关发送呼叫挂断请求。
步骤314、家庭网关通过SIP协议通知被叫终端结束会话。
在本实施例中,以本方发起挂断请求为例。具体的,负责通话控制媒体终端(即第一媒体终端)向家庭网关发送呼叫挂断请求,家庭网关接收第一媒体终端发送的呼叫挂断请求;家庭网关向正在负责媒体处理的媒体终端(即第二媒体终端)发送媒体处理停止消息,以使第二媒体终端停止媒体处理,同时其NAT模块删除NAT转发映射关系,并通过SIP协议通知被叫终端会话结束。
另外,呼叫挂断请求还可以由被叫终端发起,此时,家庭网关会通过SIP协议接收被叫终端发送的会话结束通知。然后,家庭网关向第二媒体终端发送媒体处理停止消息,以使第二媒体终端停止媒体处理,并向第一媒体终端发送通话结束通知消息,以通知第一媒体终端结束通话,而其NAT模块也会删除NAT转发映射关系。
由上述步骤304-步骤306和步骤309-步骤311可以将本实施例中UDP传输通道的建立过程概括为以下几点:1、家庭网关通过SIP协议与被叫终端约定RTP数据传输用的UDP端口号。2、在被叫应答事件中,家庭网关将媒体流传输通道的相关参数发给媒体终端,这些参数包括:媒体终端接收媒体流的端口号,被叫终端的IP地址和端口号。需要说明的是,这个媒体终端可以是发起呼叫的媒体终端,也可以不是发起呼叫的媒体终端。3、家庭网关的NAT模块建立一个NAT转发映射关系,将其接收媒体流使用的端口映射到家庭网络内进行媒体流处理的媒体终端,并可以修改NAT转发映射关系。基于此,使得媒体流(即音频流或视频流)可以由同一个媒体终端处理,也可以由不同的媒体终端处理。4、媒体终端进行媒体流处理。
在本实施例中,在家庭网关上实现SIP协议栈,一方面使通信信令与媒体处理分离实现,另一方面使SIP协议与NAT功能紧密协同,在建立媒体流通道时,通过指示NAT建立临时的NAT转发映射关系,使外网来的媒体流可以顺利到达指定的媒体终端,而在通话过程中,通过修改NAT的NAT转发映射关系,可以方便地改变媒体流的处理终端。由此可见,采用本实施例的方法,用户界面和媒体处理可以在同一台设备上,也可以在不同的设备上实现,每种媒体流可以在同一台设备上,也可以在不同的设备上实现。
本家庭网络内的媒体终端除了作为主要发起呼叫请求之外,还可以作为被叫,即外网终端作为主叫。在作为被叫流程中,整个可视电话流程也包括通话建立、通话过程、通话中媒体终端的切换以及通话挂断等几个阶段。其中,被叫流程的通话阶段、挂断阶段以及通话过程中媒体终端的切换过程与图3所示的主叫流程中的相应阶段基本相同,不再赘述。下面仅对被叫流程中的通话建立过程进行说明。
图4为本发明一实施例提供的被叫流程中通话建立过程的流程图。如图4所示,本实施例包括:
步骤401、家庭网关通过SIP协议接收外网终端发送的呼叫请求,所述呼叫请求包括外网终端的电话号码和家庭网关的电话号码。
在具体实施过程中,在作为被叫进行通话之前,家庭网络中的媒体终端需要向家庭网关进行被叫注册,以表示其可以作为被叫对象。具体的,当用户指定某个或某些媒体终端作为被叫时,会将相应媒体终端的被叫功能开启。当媒体终端的被叫功能开启时,就会向家庭网关发送被叫注册消息,家庭网关就会对本家庭网络内开启被叫功能的媒体终端进行被叫注册,也就是将这些媒体终端与家庭网关所配置的电话号码进行关联,并标识这些媒体终端可以作为被叫响应外网终端的电话呼叫。其中,各个媒体终端可以在开机启动的时候发送被叫注册消息,进行被叫注册。各个媒体终端向家庭网关发送被叫注册消息的方法可以采用约定的基于TCP协议的服务,即家庭网关作为服务器,媒体终端作为客户端,媒体终端连接到家庭网关,并通过TCP报文发送被叫注册消息。
当外网终端发起呼叫请求时,家庭网关通过SIP协议接收外网终端发送的呼叫请求。
步骤402、家庭网关判断被呼叫的电话号码是否处于空闲状态,当被呼叫的电话号码处于空闲状态时,家庭网关向本网内所有已进行被叫注册的媒体终端发送呼叫请求。
在接收到呼叫请求时,家庭网关首先判断本机(主要是指家庭网关所配置的电话号码)是否处于空闲状态。如果家庭网关所配置的电话号码处于空闲状态,则家庭网关向所有已进行被叫注册的媒体终端发送呼叫请求。其中,家庭网关向所有已进行被叫注册的媒体终端发送呼叫请求的方法可以采用扩展已有通信协议,例如MGCP、H.248协议等的方式,也可以采用B/S)方式等任何一种本领域技术人员公知的信息交互方式来实现。如果家庭网关所配置的电话号码处于占线(即正在通话)状态,则可以执行步骤404。
步骤403、当本网内所有已进行被叫注册的媒体终端中存在可以进行应答的媒体终端(即第一媒体终端)时,第一媒体终端向家庭网关发送呼叫应答消息;家庭网关接收到本网内所有已进行被叫注册的媒体终端中的第一媒体终端发送的呼叫应答消息,此时即完成与外网终端的呼叫建立过程。然后,家庭网关将会与外网终端协商确定家庭网关接收媒体流使用的家庭网关端口和外网终端接收媒体流使用的外网终端端口,以进行媒体流传输通道的建立。
对于后续步骤,本领域技术人员根据图3所示主叫流程中的相应描述可以获知具体如何实施,故在此不再赘述。
步骤404、家庭网关可以直接通过SIP协议返回呼叫失败信息,而不需要经过媒体终端。
根据具体情况,家庭网关向外网终端返回呼叫失败信息的情况不同。具体的,当家庭网关的电话号码处于占线状态时,家庭网关通过SIP协议与外网终端执行被叫占线流程。
当家庭网关未在预设时间内接收到本网内所有已进行被叫注册的媒体终端中任何媒体终端发送的呼叫应答消息时,家庭网关通过SIP协议与外网终端执行无人接听处理流程。
每一个媒体终端接收到呼叫请求后,都可以通过用户界面提示用户有电话呼叫到达(例如通过振铃的方式)。用户可以选择任一台媒体终端,通过用户界面选择接听或者拒绝。当家庭网关接收到所有已进行被叫注册的媒体终端其中之一发送的用户拒绝消息时,家庭网关通过SIP协议与外网终端执行用户拒绝流程。
其中,被叫占线流程、无人接听处理流程、用户拒绝流程均属于现有技术,本实施例不再详细描述。
在本实施例中,在家庭网关上实现SIP协议栈,一方面使通信信令与媒体处理分离实现,另一方面使SIP协议与NAT功能紧密协同,在建立媒体流通道时,通过指示NAT建立临时的NAT转发映射关系,使外网来的媒体流可以顺利到达指定的媒体终端,而在通话过程中,通过修改NAT的NAT转发映射关系,可以方便地改变媒体流的处理终端。由此可见,采用本实施例的方法,用户界面和媒体处理可以在同一台设备上,也可以在不同的设备上实现;每种媒体流(即音频流或视频流)可以在同一台设备上,也可以在不同的设备上实现。
图5为本发明一实施例提供的家庭网关的结构示意图。如图5所示,本实施例的家庭网关包括:呼叫接收模块51、协商确定模块52、建立发送模块53、第一来话流转发模块54和第一去话流转发模块55。
其中,呼叫接收模块51,用于接收呼叫请求,所述呼叫请求包括外网终端的电话号码。协商确定模块52,与呼叫接收模块51连接,用于通过SIP协议与外网终端协商确定家庭网关接收媒体流使用的家庭网关端口和外网终端接收媒体流使用的外网终端端口。建立发送模块53,与协商确定模块52连接,用于为本网内的第一媒体终端指定接收媒体流使用的第一网内终端端口,建立家庭网关端口与第一网内终端端口之间的NAT转发映射关系,并将第一网内终端端口、外网终端的IP地址和外网终端端口发送给第一媒体终端。第一来话流转发模块54,分别与建立发送模块53、第一媒体终端和外网终端连接,用于接收外网终端发送的来话媒体流,并根据建立发送模块53建立的NAT转发映射关系将外网终端发送的来话媒体流转发给第一媒体终端,以使第一媒体终端通过第一网内终端端口接收并处理来话媒体流。第一去话流转发模块55,分别与第一媒体终端和外网终端连接,用于接收第一媒体终端发送给外网终端的去话媒体流并转发给外网终端,所述去话媒体流包括外网终端的IP地址和外网终端端口。
其中,第一媒体终端是家庭网络内的一个媒体终端,为便于图示,在图5及其他图示中直接用媒体终端来表示家庭网关内的各个媒体终端(包括第一媒体终端和第二媒体终端)。
本实施例家庭网关的上述功能模块可用于执行图1所示媒体流处理方法的流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例的家庭网关可以实现可视电话中的通信信令(即SIP协议栈)功能,而由网内媒体终端实现用户界面和媒体处理,在与外网终端完成双方接收媒体流使用的端口协商后,家庭网关为媒体终端分配接收媒体流的端口并建立家庭网关接收媒体流的端口与媒体终端接收媒体流的端口之间的NAT转发映射关系,使媒体流成功在网内媒体终端与外网终端之间传输,在家庭网络或类似家庭网络的环境中实现了可视电话业务。本实施例的家庭网关通过建立家庭网关接收媒体流的端口与媒体终端接收媒体流的端口之间的NAT转发映射关系,并根据NAT转发映射关系将外网终端设备发送给网内媒体终端的媒体流转发给媒体终端,避免了NAT穿越技术的使用,从而克服了NAT穿越技术在实现可视电话业务时因其自身的非标准和不稳定性带来的缺陷;同时,由于NAT转发映射关系的建立,即使外网终端也处于另一家庭网络内部时,本网络内的媒体终端与外网终端之间媒体流的传输也不需要中间代理服务器,也就是说本实施例的媒体流处理不再受中间代理服务器性能的限制。
图6为本发明另一实施例提供的家庭网关的结构示意图。本实施例基于图5所示实施例实现,如图6所示,本实施例的家庭网关还包括:切换接收模块61、替换发送模块62、第二来话流转发模块63和第二去话流转发模块64。
其中,切换接收模块61,与第一媒体终端连接,用于接收第一媒体终端发送的终端切换请求,所述终端切换请求包括媒体流标识和第二媒体终端的标识。替换发送模块62,与切换接收模块61和第二媒体终端连接,用于根据媒体流标识,获取外网终端的IP地址和外网终端端口,并为第二媒体终端指定接收媒体流使用的第二网内终端端口,将NAT转发映射关系中第一网内终端端口替换为第二网内终端端口,并将第二网内终端端口、外网终端的IP地址和外网终端端口发送给第二媒体终端。第二来话流转发模块63,分别与外网终端、第二媒体终端和替换发送模块62连接,用于接收外网终端发送的来话媒体流,并根据替换发送模块62替换更新后的NAT转发映射关系将外网终端发送的来话媒体流转发给第二媒体终端,以使第二媒体终端通过第二网内终端端口接收并处理来话媒体流。第二去话流转发模块64,分别与外网终端和第二媒体终端连接,用于接收第二媒体终端发送给外网终端的去话媒体流并转发给外网终端,所述去话媒体流包括外网终端的IP地址和外网终端端口。
上述功能模块可用于执行图2所示媒体流处理方法中步骤106-步骤109的流程,其具体工作原理不再赘述,详见方法实施例的描述。
进一步,本实施例的家庭网关还可以包括:第一挂断接收模块65和第一结束处理模块66。
第一挂断接收模块65,与第一媒体终端连接,用于接收第一媒体终端发送的呼叫挂断请求。第一结束处理模块66,与第一挂断接收模块65、第二媒体终端和外网终端连接,用于向第二媒体终端发送媒体处理停止消息,删除NAT转发映射关系,并通过SIP协议通知外网终端会话结束。
更进一步,本实施例的家庭网关还可以包括:第二挂断接收模块67和第二结束处理模块68。
其中,第二挂断接收模块67,与外网终端连接,用于通过SIP协议接收外网终端发送的会话结束通知。第二结束处理模块68,与第二挂断接收模块67、第二媒体终端和第一媒体终端连接,用于向第二媒体终端发送媒体处理停止消息,向第一媒体终端发送通话结束通知消息,并删除NAT转发映射关系。
上述功能模块可用于执行图3所示媒体流处理方法中通话结束时的处理流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例的呼叫接收模块51包括:第一呼叫接收单元511;协商确定模块52包括第一协商确定单元521。
具体的,第一呼叫接收单元511,与第一媒体终端连接,用于接收第一媒体终端发送的呼叫请求,所述呼叫请求包括外网终端的电话号码。第一协商确定单元521,与第一呼叫接收单元511和外网终端连接,用于在第一呼叫接收单元511接收到呼叫请求后,通过SIP协议向外网终端发起呼叫,并在呼叫成功时,与外网终端协商确定家庭网关接收媒体流使用的家庭网关端口和外网终端接收媒体流使用的外网终端端口。
基于上述呼叫接收模块51和协商确定模块52的具体实现,本实施例的家庭网关还包括:失败发送模块69。失败发送模块69,与第一协商确定单元521和第一媒体终端连接,用于在呼叫失败时,向第一媒体终端发送呼叫失败消息。
进一步,本实施例的呼叫接收模块51还包括:第二呼叫接收单元512;协商确定模块52还包括判断转发单元522和第二协商确定单元523。
第二呼叫接收单元512,与外网终端连接,用于通过SIP协议接收外网终端发送的呼叫请求,所述呼叫请求包括携带有外网终端的电话号码和家庭网关的电话号码。判断转发单元522,与第二呼叫接收单元512连接,用于在第二呼叫接收单元512接收到呼叫请求后,判断家庭网关的电话号码(即被叫电话号码)是否处于空闲状态,当被叫电话号码处于空闲状态时,向本网内所有已进行被叫注册的媒体终端发送呼叫请求。第二协商确定单元523,与第一媒体终端和外网媒终端连接,用于在接收到本网内所有已进行被叫注册的媒体终端中的第一媒体终端发送的呼叫应答消息时,与外网终端协商确定家庭网关接收媒体流使用的家庭网关端口和外网终端接收媒体流使用的外网终端端口。
上述功能单元可用于执行图3或图4所示实施例中相应处理流程,其具体工作原理不再赘述,详见方法实施例的描述。
基于上述呼叫接收模块51和协商确定模块52的具体实现,本实施例的家庭网关还包括:失败处理模块70。失败处理模块70,与判断转发单元522、外网终端以及家庭网络内的媒体终端连接,用于在家庭网关的电话号码处于占线状态时,通过SIP协议与外网终端执行被叫占线流程,或者用于在未在预设时间内接收到本网内所有已进行被叫注册的媒体终端中任何媒体终端发送的呼叫应答消息时,通过SIP协议与外网终端执行无人接听处理流程,或者用于在接收到所有已进行被叫注册的媒体终端其中之一发送的用户拒绝消息时,通过SIP协议与外网终端执行用户拒绝流程。
上述失败处理模块70可用于执行图4所示实施例中步骤404的详细流程,其具体工作原理不再赘述,详见方法实施例的描述。
更进一步,本实施例的家庭网关还以包括:注册接收模块71。注册接收模块71,与家庭网络内的媒体终端连接,用于接收本网内开启被叫功能的媒体终端发送的被叫注册消息,以对本网内开启被叫功能的媒体终端进行被叫注册。
上述注册接收模块71可用于执行图4所示实施例中步骤401之前的被叫注册流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例的家庭网关实现了SIP协议栈,一方面使通信信令与媒体处理分离实现,另一方面使SIP协议与NAT功能紧密协同,在建立媒体流通道时,通过指示NAT建立临时的NAT转发映射关系,使外网来的媒体流可以顺利到达指定的媒体终端,而在通话过程中,通过修改NAT的NAT转发映射关系,可以方便地改变媒体流的处理终端。由此可见,采用本实施例的家庭网关进行媒体处理时,用户界面和媒体处理可以在同一台设备上,也可以在不同的设备上实现;每种媒体流可以在同一台设备上,也可以在不同的设备上实现。
图7为本发明一实施例提供的媒体流处理系统的结构示意图。如图7所示,本实施例的媒体流处理系统包括:家庭网关80和至少一个媒体终端81。
其中,家庭网关80为本发明实施例提供的家庭网关,其具体结构可参见图5或图6所示,在此不再赘述,其具体工作原理可参见图1-图4任一实施例的描述,在此不再赘述。
媒体终端81与家庭网关80连接,用于在作为可视电话终端时接收家庭网关80发送的来话媒体流,并向家庭网关80发送去话媒体流。
本实施例的媒体流处理系统可用于执行图1-图4所示实施例的流程,同样实现了通信信令与媒体处理分离实现,以及SIP协议与NAT功能紧密协同;在建立媒体流通道时,家庭网关通过指示NAT建立临时的NAT转发映射关系,使外网来的媒体流可以顺利到达指定的媒体终端,而在通话过程中,通过修改NAT的NAT转发映射关系,可以方便地改变媒体流的处理终端,使得用户界面和媒体处理可以在同一台设备上,也可以在不同的设备上实现;每种媒体流可以在同一台设备上,也可以在不同的设备上实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (17)

1.一种媒体流处理方法,其特征在于,包括:
家庭网关接收呼叫请求,所述呼叫请求包括外网终端的电话号码;
所述家庭网关通过会话初始协议SIP与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口;
所述家庭网关为本网内的第一媒体终端指定接收媒体流使用的第一网内终端端口,建立所述家庭网关端口与所述第一网内终端端口之间的网络地址转换NAT转发映射关系,并将所述第一网内终端端口、所述外网终端的网际协议IP地址和所述外网终端端口发送给所述第一媒体终端;
所述家庭网关接收所述外网终端发送的来话媒体流,并根据所述NAT转发映射关系将所述外网终端发送的来话媒体流转发给所述第一媒体终端,以使所述第一媒体终端通过所述第一网内终端端口接收并处理所述来话媒体流;
所述家庭网关接收所述第一媒体终端发送给所述外网终端的去话媒体流并转发给所述外网终端,所述去话媒体流包括所述外网终端的IP地址和所述外网终端端口;
所述的媒体流处理方法,还包括:
所述家庭网关接收所述第一媒体终端发送的终端切换请求,所述终端切换请求包括媒体流标识和第二媒体终端的标识;
所述家庭网关根据所述媒体流标识,获取所述外网终端的IP地址和所述外网终端端口,并为所述第二媒体终端指定接收媒体流使用的第二网内终端端口,将所述NAT转发映射关系中所述第一网内终端端口替换为所述第二网内终端端口,并将所述第二网内终端端口、所述外网终端的IP地址和所述外网终端端口发送给所述第二媒体终端;
所述家庭网关接收所述外网终端发送的来话媒体流,并根据所述NAT转发映射关系将所述外网终端发送的来话媒体流转发给所述第二媒体终端,以使所述第二媒体终端通过所述第二网内终端端口接收并处理所述来话媒体流;
所述家庭网关接收所述第二媒体终端发送给所述外网终端的去话媒体流并转发给所述外网终端,所述去话媒体流包括所述外网终端的IP地址和所述外网终端端口。
2.根据权利要求1所述的媒体流处理方法,其特征在于,还包括:
所述家庭网关接收所述第一媒体终端发送的呼叫挂断请求;
所述家庭网关向所述第二媒体终端发送媒体处理停止消息,删除所述NAT转发映射关系,并通过SIP协议通知所述外网终端会话结束。
3.根据权利要求1所述的媒体流处理方法,其特征在于,还包括:
所述家庭网关通过SIP协议接收所述外网终端发送的会话结束通知;
所述家庭网关向所述第二媒体终端发送媒体处理停止消息,向所述第一媒体终端发送通话结束通知消息,并删除所述NAT转发映射关系。
4.根据权利要求1或2或3所述的媒体流处理方法,其特征在于,所述家庭网关接收呼叫请求包括:
所述家庭网关接收所述第一媒体终端发送的呼叫请求,所述呼叫请求包括所述外网终端的电话号码。
5.根据权利要求4所述的媒体流处理方法,其特征在于,所述家庭网关通过SIP协议与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口包括:
所述家庭网关通过SIP协议向所述外网终端发起呼叫,并在呼叫成功时,与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口。
6.根据权利要求1或2或3所述的媒体流处理方法,其特征在于,所述家庭网关接收呼叫请求包括:
所述家庭网关通过SIP协议接收所述外网终端发送的呼叫请求,所述呼叫请求包括所述外网终端的电话号码和所述家庭网关的电话号码。
7.根据权利要求6所述的媒体流处理方法,其特征在于,所述家庭网关通过SIP协议与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口包括:
所述家庭网关判断所述家庭网关的电话号码是否处于空闲状态,当所述家庭网关的电话号码处于空闲状态时,所述家庭网关向本网内所有已进行被叫注册的媒体终端转发所述呼叫请求;
当所述家庭网关接收到本网内所有已进行被叫注册的媒体终端中的所述第一媒体终端发送的呼叫应答消息时,所述家庭网关与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口。
8.根据权利要求7所述的媒体流处理方法,其特征在于,所述家庭网关判断所述家庭网关的电话号码是否处于空闲状态之前包括:
所述家庭网关接收本网内开启被叫功能的媒体终端发送的被叫注册消息,以对本网内开启被叫功能的媒体终端进行被叫注册。
9.一种家庭网关,其特征在于,包括:
呼叫接收模块,用于接收呼叫请求,所述呼叫请求包括外网终端的电话号码;
协商确定模块,用于通过会话初始协议SIP与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口;
建立发送模块,用于为本网内的第一媒体终端指定接收媒体流使用的第一网内终端端口,建立所述家庭网关端口与所述第一网内终端端口之间的网络地址转换NAT转发映射关系,并将所述第一网内终端端口、所述外网终端的网际协议IP地址和所述外网终端端口发送给所述第一媒体终端;
第一来话流转发模块,用于接收所述外网终端发送的来话媒体流,并根据所述NAT转发映射关系将所述外网终端发送的来话媒体流转发给所述第一媒体终端,以使所述第一媒体终端通过所述第一网内终端端口接收并处理所述来话媒体流;
第一去话流转发模块,用于接收所述第一媒体终端发送给所述外网终端的去话媒体流并转发给所述外网终端,所述去话媒体流包括所述外网终端的IP地址和所述外网终端端口;
所述的家庭网关,还包括:
切换接收模块,用于接收所述第一媒体终端发送的终端切换请求,所述终端切换请求包括媒体流标识和第二媒体终端的标识;
替换发送模块,用于根据所述媒体流标识,获取所述外网终端的IP地址和所述外网终端端口,并为所述第二媒体终端指定接收媒体流使用的第二网内终端端口,将所述NAT转发映射关系中所述第一网内终端端口替换为所述第二网内终端端口,并将所述第二网内终端端口、所述外网终端的IP地址和所述外网终端端口发送给所述第二媒体终端;
第二来话流转发模块,用于接收所述外网终端发送的来话媒体流,并根据所述NAT转发映射关系将所述外网终端发送的来话媒体流转发给所述第二媒体终端,以使所述第二媒体终端通过所述第二网内终端端口接收并处理所述来话媒体流;
第二去话流转发模块,用于接收所述第二媒体终端发送给所述外网终端的去话媒体流并转发给所述外网终端,所述去话媒体流包括所述外网终端的IP地址和所述外网终端端口。
10.根据权利要求9所述的家庭网关,其特征在于,还包括:
第一挂断接收模块,用于接收所述第一媒体终端发送的呼叫挂断请求;
第一结束处理模块,用于向所述第二媒体终端发送媒体处理停止消息,删除所述NAT转发映射关系,并通过SIP协议通知所述外网终端会话结束。
11.根据权利要求9所述的家庭网关,其特征在于,还包括:
第二挂断接收模块,用于通过SIP协议接收所述外网终端发送的会话结束通知;
第二结束处理模块,用于向所述第二媒体终端发送媒体处理停止消息,向所述第一媒体终端发送通话结束通知消息,并删除所述NAT转发映射关系。
12.根据权利要求9或10或11所述的家庭网关,其特征在于,所述呼叫接收模块包括:
第一呼叫接收单元,用于接收所述第一媒体终端发送的呼叫请求,所述呼叫请求包括所述外网终端的电话号码。
13.根据权利要求12所述的家庭网关,其特征在于,所述协商确定模块包括:
第一协商确定单元,用于通过SIP协议向所述外网终端发起呼叫,并在呼叫成功时,与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口。
14.根据权利要求9或10或11所述的家庭网关,其特征在于,所述呼叫接收模块包括:
第二呼叫接收单元,用于通过SIP协议接收所述外网终端发送的呼叫请求,所述呼叫请求包括携带有所述外网终端的电话号码和所述家庭网关的电话号码。
15.根据权利要求14所述的家庭网关,其特征在于,所述协商确定模块包括:
判断转发单元,用于判断所述家庭网关的电话号码是否处于空闲状态,当所述家庭网关的电话号码处于空闲状态时,向本网内所有已进行被叫注册的媒体终端转发所述呼叫请求;
第二协商确定单元,用于在接收到本网内所有已进行被叫注册的媒体终端中的所述第一媒体终端发送的呼叫应答消息时,与所述外网终端协商确定所述家庭网关接收媒体流使用的家庭网关端口和所述外网终端接收媒体流使用的外网终端端口。
16.根据权利要求15所述的家庭网关,其特征在于,还包括:
注册接收模块,用于接收本网内开启被叫功能的媒体终端发送的被叫注册消息,以对本网内开启被叫功能的媒体终端进行被叫注册。
17.一种媒体流处理系统,其特征在于,包括:权利要求9至16任一所述的家庭网关和至少一个媒体终端。
CN201110265998.4A 2011-09-08 2011-09-08 媒体流处理方法、系统及家庭网关 Active CN102291415B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110265998.4A CN102291415B (zh) 2011-09-08 2011-09-08 媒体流处理方法、系统及家庭网关

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110265998.4A CN102291415B (zh) 2011-09-08 2011-09-08 媒体流处理方法、系统及家庭网关

Publications (2)

Publication Number Publication Date
CN102291415A CN102291415A (zh) 2011-12-21
CN102291415B true CN102291415B (zh) 2014-05-14

Family

ID=45337523

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110265998.4A Active CN102291415B (zh) 2011-09-08 2011-09-08 媒体流处理方法、系统及家庭网关

Country Status (1)

Country Link
CN (1) CN102291415B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103532911B (zh) * 2012-07-04 2017-05-24 中兴通讯股份有限公司 流媒体播放方法及系统
CN103780779B (zh) * 2012-10-19 2016-10-05 华为技术有限公司 媒体流的交互方法和网络设备
CN103179030A (zh) * 2013-03-28 2013-06-26 上海斐讯数据通信技术有限公司 一种家庭网关设备
CN103391334B (zh) * 2013-06-28 2016-12-28 贵阳朗玛信息技术股份有限公司 一种网络穿越方法、装置及系统
CN111787026B (zh) * 2020-07-27 2022-09-27 北京飞讯数码科技有限公司 一种媒体数据的传输方法、装置、设备及存储介质
CN111885219B (zh) * 2020-07-28 2023-04-07 杭州迪普科技股份有限公司 一种基于sip媒体协商的通信方法、装置和nat设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1599376A (zh) * 2004-07-28 2005-03-23 沈逸林 网络媒体话机终端的应用和通信方法
CN101179477A (zh) * 2006-11-10 2008-05-14 中国科学院声学研究所 一种实现嵌入式路由器的方法
CN101341716A (zh) * 2005-12-19 2009-01-07 艾利森电话股份有限公司 用于建立单播媒体会话的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1599376A (zh) * 2004-07-28 2005-03-23 沈逸林 网络媒体话机终端的应用和通信方法
CN101341716A (zh) * 2005-12-19 2009-01-07 艾利森电话股份有限公司 用于建立单播媒体会话的方法
CN101361342A (zh) * 2005-12-19 2009-02-04 艾利森电话股份有限公司 用于在家庭网络内实现发现的方法和设备
CN101179477A (zh) * 2006-11-10 2008-05-14 中国科学院声学研究所 一种实现嵌入式路由器的方法

Also Published As

Publication number Publication date
CN102291415A (zh) 2011-12-21

Similar Documents

Publication Publication Date Title
US7656889B2 (en) IP-based voice/video communication system and call pickup/forwarding method
EP1761078B1 (en) Method and processor-readable medium for the selection of special-purpose gateways.
JP4786993B2 (ja) 音声伝送用の電話網を使用するipテレビ会議を確立する方法
CA2625957C (en) Conferencing pstn gateway methods and apparatus to facilitate heterogeneous wireless network handovers for mobile communication devices
US6914897B1 (en) System and method for accessing radio programs using a data network telephone in a network based telecommunication system
EP2114049B1 (en) Video interworking gateway, system and method for realizing video call service
US8788624B2 (en) System and method for controlling delivery of media data to target devices
CN102291415B (zh) 媒体流处理方法、系统及家庭网关
JP4446768B2 (ja) Ip電話機
WO2010045812A1 (zh) 一种通话切换的方法、装置和系统
KR100602638B1 (ko) 음성 서비스 시스템 및 그 접속 방법
CN101453524A (zh) 一种多媒体业务的实现方法
WO2008064580A1 (fr) Procédé, système et serveur d'application pour éviter la diaphonie de signal de rappel couleur
US9071690B2 (en) Call transfer processing in SIP mode
US20060215640A1 (en) Method for setting up a data connection between terminal devices
KR100969458B1 (ko) 세션 설정 프로토콜을 이용한 멀티미디어 링백 서비스시스템 및 그 방법
US7474665B2 (en) Apparatus and method for compulsively receiving multi-calls over internet protocol phones in internet protocol telephony system
KR101069530B1 (ko) 차세대통신망에서 착신 통화로 제어 장치 및 그 방법과, 그를 이용한 멀티미디어 정보 서비스 시스템 및 그 방법
CN103152494A (zh) 一种话务员呼叫转接的方法和总机业务应用服务器
CN102137249A (zh) 一种视频通信的处理方法、系统和视频互通设备
JP4372160B2 (ja) 電話交換システム
KR100809398B1 (ko) 멀티프로토콜을 지원하는 VoIP에서의 SMS 전송방법 및 그 시스템
CN102480418B (zh) 实现cdma2000终端和软交换终端视频互通的路由方法
JP7335777B2 (ja) ナースコールシステム
KR100734140B1 (ko) 광대역 통신망의 일반전화 가입자에 대한 번호이동성제공시스템

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant