CN111885219B - 一种基于sip媒体协商的通信方法、装置和nat设备 - Google Patents

一种基于sip媒体协商的通信方法、装置和nat设备 Download PDF

Info

Publication number
CN111885219B
CN111885219B CN202010739296.4A CN202010739296A CN111885219B CN 111885219 B CN111885219 B CN 111885219B CN 202010739296 A CN202010739296 A CN 202010739296A CN 111885219 B CN111885219 B CN 111885219B
Authority
CN
China
Prior art keywords
address
message
sip
destination
linked list
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
CN202010739296.4A
Other languages
English (en)
Other versions
CN111885219A (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.)
Hangzhou DPTech Technologies Co Ltd
Original Assignee
Hangzhou DPTech Technologies 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 Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN202010739296.4A priority Critical patent/CN111885219B/zh
Publication of CN111885219A publication Critical patent/CN111885219A/zh
Application granted granted Critical
Publication of CN111885219B publication Critical patent/CN111885219B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2564NAT traversal for a higher-layer protocol, e.g. for session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请提供的基于SIP媒体协商的通信方法,包括:判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文;若是,获取所述SIP邀请报文的应用层IP地址和呼叫标识;生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表;在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识;从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。本申请提供的基于SIP媒体协商的通信方法、装置和NAT设备,可保证视频数据的顺利传输。

Description

一种基于SIP媒体协商的通信方法、装置和NAT设备
技术领域
本申请涉及通讯领域,尤其涉及一种基于SIP媒体协商的通信方法、装置和NAT设备。
背景技术
会话发起协议SIP(Session Initiation Protocol,简称SIP)是一种应用层控制协议,主要用来创建、修改或终结会话,广泛地应用于视频监控领域。
在视频监控领域,播放控制服务器和录制控制服务器常通过SIP协商来使摄像头(录制控制服务器控制的摄像头)获知播放器(播放控制服务器控制的播放器)的IP地址,以使摄像头将视频数据发送给播放器播放。具体实现时,在SIP协商阶段,播放控制服务器通过在SIP邀请报文中携带播放器的IP地址将播放器的IP地址告知摄像头。进一步地,当播放器播放媒体流时,摄像头基于获取到的播放器的IP地址将媒体流发送给播放器。
在协商阶段,当播放控制服务器位于局域网中时,与该播放控制服务器位于同一局域网的NAT设备会对来自该播放控制服务器的SIP邀请报文的网络层IP地址和应用层IP地址进行地址转换。
相应地,在播放器播放媒体流时,NAT设备在接收到来自摄像头的媒体流后,会将媒体流的目的IP地址还原为播放器的IP地址,进而将来自摄像头的媒体流发送至播放器播放。
NAT设备在接收到来自摄像头的媒体流时,若无法对媒体流进行地址还原,将导致视频数据无法传输。
发明内容
有鉴于此,本申请提供一种基于SIP媒体协商的通信方法、装置和NAT设备,以解决现有技术因无法对来自摄像头的媒体流进行地址还原导致的视频数据无法传输的问题。
本申请第一方面提供一种基于SIP媒体协商的通信方法,所述方法应用于NAT设备,所述方法包括:
判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文;
若是,获取所述SIP邀请报文的应用层IP地址和呼叫标识;
生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表;
在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识;
从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
本申请第二方面提供一种基于SIP媒体协商的通信装置,所述装置应用于NAT设备,所述装置包括判断模块、获取模块和处理模块,其中,
所述判断模块,用于判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文;
所述获取模块,用于在所述判断模块判断接收到的报文为来自播放控制服务器的会话发起协议SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识;
所述处理模块,用于生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表;
所述获取模块,还用于在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识;
所述处理模块,还用于从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
本申请第三方面提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本申请提供的任一基于SIP媒体协商的通信方法的步骤。
本申请第四方面提供一种网络地址转换设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请提供的任一基于SIP媒体协商的通信方法的步骤。
本申请提供的基于SIP媒体协商的通信方法、装置和NAT设备,通过判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,并在判断接收到的报文为来自播放控制服务器的SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识,进而生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表,从而在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识,并从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,进而利用所述表项对所述目的IP地址进行地址还原。由于呼叫标识可以唯一标识摄像头,这样,对于每个摄像头,即可在NAT设备上生成其唯一对应的映射关系,后续即可利用该映射关系对来自该摄像头的媒体流进行地址还原,确保视频数据的顺利传输。
附图说明
图1为本申请一示例性实施例示出的应用场景示意图;
图2为本申请提供的基于SIP媒体协商的通信方法实施例一的流程图;
图3为本申请一示例性实施例示出的基于SIP媒体协商的通信方法的流程图;
图4为本申请一示例性实施例示出的基于SIP媒体协商的通信装置所在网络地址转换设备的硬件结构图;
图5为本申请提供的基于SIP媒体协商的通信装置实施例一的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
会话发起协议SIP(Session Initiation Protocol,简称SIP)是一种应用层控制协议,主要用来创建、修改或终结会话,广泛地应用于视频监控领域。
在视频监控领域,播放控制服务器和录制控制服务器常通过SIP协商来使摄像头(录制控制服务器控制的摄像头)获知播放器(播放控制服务器控制的播放器)的IP地址,以使摄像头将视频数据发送给播放器播放。具体实现时,在SIP协商阶段,播放控制服务器通过在向录制控制服务器发送的SIP邀请报文中携带播放器的IP地址将播放器的IP地址告知摄像头。进一步地,当播放器播放媒体流时,摄像头基于获取到的播放器的IP地址将媒体流发送给播放器。
当播放控制服务器位于局域网中时,与该播放控制服务器位于同一局域网的NAT设备会对来自该播放控制服务器的SIP邀请报文的网络层IP地址和应用层IP地址进行地址转换,并记录应用层IP地址和应用层IP地址进行地址转换后的IP地址之间的映射关系。这样,在接收到来自摄像头的媒体流,即可利用记录的映射关系将媒体流的目的IP地址还原为播放器的IP地址,以将来自摄像头的媒体流发送至播放器播放。具体实现时,在利用记录的映射关系将媒体流的目的IP地址还原为播放器的IP地址之后,会将该条映射关系删除。
图1为本申请一示例性实施例示出的应用场景示意图。参照图1,当录制控制服务器同时控制多个摄像头时,例如,在图1所示示例中,同时控制摄像头1、摄像头2和摄像头3时,此时,若播放器调取摄像头1的媒体流、但没有播放时,此时,NAT设备上会生成如下映射关系:1.1.2.5/32~3.3.3.5/32,进一步地,若此时播放器需要调用摄像头2的媒体流时,由于现有技术中,是基于网络层层IP地址转换后的IP对应用层IP地址进行转换的,即对于摄像头1和摄像头2而言,应用层IP地址转换后的IP地址是相同的,因此,此时,NAT设备上会生成一条与上述映射关系相同的映射关系,为了避免重复,现有技术中,仅记录一条映射关系。这样,若此时播放器播放摄像头1的媒体流,来自摄像头1的媒体流在利用映射关系进行地址还原后,NAT设备将该条映射关系删除,此时,若摄像头2在摄像头1之后发送媒体流,会因不存在映射关系导致无法对来自摄像头2的媒体流进行地址还原,导致视频数据无法传输的问题。
本申请提供一种基于SIP媒体协商的通信方法、装置和NAT设备,以解决现有技术因无法对来自摄像头的媒体流进行地址还原导致的视频数据无法传输的问题。
本申请提供的基于SIP媒体协商的通信方法、装置和NAT设备,通过判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,并在判断接收到的报文为来自播放控制服务器的SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识,进而生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表,从而在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识,并从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,进而利用所述表项对所述目的IP地址进行地址还原。由于呼叫标识可以唯一标识摄像头,这样,对于每个摄像头,即可在NAT设备上生成其唯一对应的映射关系,后续即可利用该映射关系对来自该摄像头的媒体流进行地址还原,确保视频数据的顺利传输。
下面给出几个具体的实施例,用以详细介绍本申请的技术方案,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请提供的基于SIP媒体协商的通信方法实施例一的流程图。请参照图2,本实施例提供的方法,可以包括:
S201、判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文。
具体实现时,该步骤的具体实现过程,可以包括:
(1)判断接收到的报文的目的端口是否为指定端口。
具体的,指定端口是根据实际需要设定的,本实施例中,不对此进行限定,例如,一实施例中,指定端口为5060端口。
(2)若否,确定该报文不是SIP邀请报文。
例如,一实施例中,接收到的报文的目的端口为5070端口,此时,确定该报文不是SIP邀请报文。
(3)若是,在该报文携带指定字段时确定该报文是SIP邀请报文,在该报文未携带指定字段时确定该报文不是SIP邀请报文。
具体的,指定字段可以是Invite字段。具体实现时,可以对目的端口为5060的报文进行解析,判断其应用层是否携带Invite字段,进而在其应用层携带Invite字段时,确定其是SIP邀请报文,否则确定其不是SIP邀请报文。
S202、若是,获取所述SIP邀请报文的应用层IP地址和呼叫标识。
具体的,SIP邀请报文由起始行、消息头和消息体组成。其中,消息头中携带的IP地址为网络层IP地址。此外,消息体中的主要信息是SDP(Session Description Protocol,简称SDP)协议描述的媒体控制信息,供双方协商并建立媒体信道。消息体中携带应用层IP地址和呼叫标识CALL-ID,本步骤中,可从SIP邀请报文的消息体中获取应用层IP地址和呼叫标识CALL-ID。例如,一实施例中,获取到的应用层IP地址和呼叫标识CALL-ID分别为1.1.2.5/32和CALL-ID1(例如,CALL-ID1可唯一标识摄像头1)。
呼叫标识用于对针对同一摄像头的会话进行标识,即针对同一摄像头的请求和响应中,呼叫标识是唯一的,且对于不同的摄像头,呼叫标识是不同的,因此,可以用呼叫标识唯一标识摄像头。
S203、生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表。
需要说明的是,本申请提供的方法,还包括对网络层IP地址和应用层IP地址进行地址转换、并将地址转换后的报文发送至录制控制服务器的步骤。有关对网络层IP地址和应用层IP地址进行地址转换的具体实现原理可以参见相关技术中的描述,此处不再赘述。例如,在一实施例中,可利用相关的NAT方法对网络层源IP地址进行地址转换,得到转换后地址,进而将应用层IP地址转换为上述转换后地址。例如,一实施例中,网络层源IP地址为1.1.1.5/32,应用层IP地址为1.1.2.5/32,利用相关的NAT方法对网络层源IP地址进行地址转换,得到转换后地址为3.3.3.5/32,此时,可将应用层IP地址(1.1.2.5/32)转换为3.3.3.5/32。
结合上面的例子,本步骤中,可生成如下映射关系:1.1.2.5/32~3.3.3.5/32~CALL-ID1。
进一步的,在图1所示应用场景中,当分别调取三个摄像头的媒体流时,此时,由于三个摄像头的呼叫标识不同,NAT设备上会生成三条映射关系,即针对每个摄像头,均生成与其对应的映射关系,例如,一实施例中,生成如表1所示的匹配链表:
表1匹配链表
1.1.2.5/32~3.3.3.5/32~CALL-ID1
1.1.2.5/32~3.3.3.5/32~CALL-ID2
1.1.2.5/32~3.3.3.5/32~CALL-ID3
S204、在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识。
例如,当播放摄像头1的媒体流时,来自摄像头1的媒体流到达NAT设备后,此时,获取到的目的IP地址和目标呼叫标识分别为:3.3.3.5/2和CALL-ID1。
S205、从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
结合上面的例子,查找到的表项如下:
1.1.2.5/32~3.3.3.5/32~CALL-ID1
此时,利用该表项对所述目的IP地址进行地址还原,本例中,将目的IP地址还原为1.1.2.5/32,进而将地址还原后的报文发送出去。
需要说明的是,在利用匹配的表项对所述目的IP地址进行地址还原之后,所述方法还可以包括:将该条表项删除。
结合上面的例子,例如,在播放完摄像头1的媒体流后,若接收到来自摄像头2的媒体流,此时,会利用1.1.2.5/32~32~CALL-ID1这一条映射关系对目的IP地址还原。这样,针对每个摄像头,由于NAT设备上存在与其唯一对应的映射关系,可利用该映射关系对来自该摄像头的媒体流进行地址还原,不存在无法进行地址还原的问题,可保证视频数据的顺利传输。
本实施例提供的方法,通过判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,并在接收到的报文为SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识,进而生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表,从而在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识,并从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,进而利用所述表项对所述目的IP地址进行地址还原。由于呼叫标识可以唯一标识摄像头,这样,对于每个摄像头,即可在NAT设备上生成其唯一对应的映射关系,后续即可利用该映射关系对来自该摄像头的媒体流进行地址还原,确保视频数据的顺利传输。
图3为本申请一示例性实施例示出的基于SIP媒体协商的通信方法的流程图。请参照图3,本实施例提供的通信方法,可以包括:
S301、判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文。
S302、若是,获取所述SIP邀请报文的应用层IP地址和呼叫标识。
S303、生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系。
有关步骤S301至步骤S303的具体实现原理和实现过程可以参见上述实施例中的描述,此处不再赘述。
S304、判断匹配链表中是否存在与所述映射关系匹配的表项,若否,执行步骤S305,若是,执行步骤S306。
具体实现时,可以先判断匹配链表中是否存在与所述映射关系中的IP地址匹配的表项,若不存在,则直接确定匹配链表中不存在与所述映射关系匹配的表项,若存在,则再判断当前匹配的表项中记录的呼叫标识是否与映射关系中的呼叫标识相同,若相同,则确定匹配链表中存在与所述映射关系匹配的表项,否则确定匹配链表中不存在与所述映射关系匹配的表项。
S305、将所述映射关系插入到匹配链表。
S306、更新所述表项对应的老化时间。
具体实现时,可将表项对应的老化时间更新为老化时间的初始值。例如,老化时间的初始值为30分钟,随着时间的流逝,表项对应的老化时间逐渐变短。例如,一实施例中,当前时刻,表项对应的老化时间为20分钟,此时,可将该表项对应的老化时间更新为30分钟。
结合上面的例子,例如,一实施例中,当前时刻,本设备存储的匹配链表如表2所示:
表2匹配链表
表项 老化时间
表项1 1.1.2.5/32~3.3.3.5/32~CALL-ID1 20分钟
表项2 1.1.2.5/32~3.3.3.5/32~CALL-ID2 29分钟
一实施例中,当前生成的映射关系如下:1.1.2.5/32~3.3.3.5/32~CALL-ID2,此时,经判断,确定匹配链表中的表项2与其匹配,此时,将表项2的老化时间更新为30分钟。
在一实施例中,当前生成的映射关系如下:1.1.2.5/32~3.3.3.5/32~CALL-ID3,此时,经判断,确定匹配链表中不存在与其匹配的表项,此时,将该映射关系插入到匹配链表中。
S307、在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识。
S308、从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
有关步骤S307和步骤S308的具体实现原理和实现过程可以参见前面实施例中的描述,此处不再赘述。
本实施例提供的方法,通过判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,并在接收到的报文为SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识,进而生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,从而在本地存储的匹配链表中不存在与所述映射关系匹配的表项时,在所述匹配链表中插入所述映射关系,而在本地存储的匹配链表中存在与所述映射关系匹配的表项时,更新所述表项的老化时间。由于呼叫标识可以唯一标识摄像头,这样,对于每个摄像头,即可在NAT设备上生成其唯一对应的映射关系,后续即可利用该映射关系对来自该摄像头的媒体流进行地址还原,可确保视频数据的顺利传输。
与前述基于SIP媒体协商的通信方法的实施例相对应,本申请还提供了基于SIP媒体协商的通信装置的实施例。
本申请基于SIP媒体协商的通信装置的实施例可以应用在网络地址转换设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在网络地址转换设备的处理器将存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请一示例性实施例示出的基于SIP媒体协商的通信装置所在网络地址转换设备的硬件结构图,除了图4所示的存储器410、处理器420、内存430和网络接口440之外,实施例中装置所在的网络地址转换设备通常根据该网络地址转换装置的实际功能,还可以包括其他硬件,对此不再赘述。
图5为本申请提供的基于SIP媒体协商的通信装置实施例一的结构示意图。请参照图5,本实施例提供的装置,应用于NAT设备,所述装置包括判断模块510、获取模块520和处理模块530,其中,
所述判断模块510,用于判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文;
所述获取模块520,用于在所述判断模块510判断接收到的报文为来自播放控制服务器的会话发起协议SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识;
所述处理模块530,用于生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表;
所述获取模块510,还用于在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识;
所述处理模块530,还用于从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
本实施例提供的装置,可用于执行图2所示方法实施例的技术方案,具体实现原理和实现过程类似,此处不再赘述。
进一步地,所述处理模块530,具体用于判断所述匹配链表中是否存在与所述映射关系匹配的表项,并在判断所述匹配链表中不存在与所述映射关系匹配的表项时,将所述映射关系插入到匹配链表。
进一步地,所述处理模块530,还用于在判断所述匹配链表中存在与所述映射关系匹配的表项时,更新所述表项对应的老化时间。
进一步地,所述判断模块510,具体用于:
判断接收到的报文的目的端口是否为指定端口;
若否,确定该报文不是SIP邀请报文;
若是,在该报文携带指定字段时确定该报文是SIP邀请报文,在该报文未携带指定字段时确定该报文不是SIP邀请报文。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本申请提供的任一基于SIP媒体协商的通信方法的步骤。
具体的,适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如EPROM、EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM和DVD-ROM盘。
请继续参照图4,本申请还提供一种网络地址转换设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请提供的任一基于SIP媒体协商的通信方法的步骤。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种基于SIP媒体协商的通信方法,其特征在于,所述方法应用于NAT设备,所述方法包括:
判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,所述NAT设备与所述播放控制服务器位于同一局域网,所述SIP邀请报文包括应用层IP和呼叫标识,所述呼叫标识用于唯一标识摄像头,所述摄像头包括录制控制服务器控制的多个摄像头;
若是,获取所述SIP邀请报文的应用层IP地址和呼叫标识;
生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表;
在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识;
从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
2.根据权利要求1所述的方法,所述将所述映射关系插入到匹配链表,包括:
判断所述匹配链表中是否存在与所述映射关系匹配的表项;
若否,将所述映射关系插入到匹配链表。
3.根据权利要求2所述的方法,其特征在于,若所述匹配链表中存在与所述映射关系匹配的表项,所述方法还包括:
更新所述表项对应的老化时间。
4.根据权利要求1所述的方法,其特征在于,所述判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,包括:
判断接收到的报文的目的端口是否为指定端口;
若否,确定该报文不是SIP邀请报文;
若是,在该报文携带指定字段时确定该报文是SIP邀请报文,在该报文未携带指定字段时确定该报文不是SIP邀请报文。
5.一种基于SIP媒体协商的通信装置,其特征在于,所述装置应用于NAT设备,所述装置包括判断模块、获取模块和处理模块,其中,
所述判断模块,用于判断接收到的报文是否为来自播放控制服务器的会话发起协议SIP邀请报文,所述NAT设备与所述播放控制服务器位于同一局域网,所述SIP邀请报文包括应用层IP和呼叫标识,所述呼叫标识用于唯一标识摄像头,所述摄像头包括录制控制服务器控制的多个摄像头;
所述获取模块,用于在所述判断模块判断接收到的报文为来自播放控制服务器的会话发起协议SIP邀请报文时,获取所述SIP邀请报文的应用层IP地址和呼叫标识;
所述处理模块,用于生成所述应用层IP地址、所述应用层IP地址进行地址转换后的IP地址和所述呼叫标识三者之间的映射关系,并将所述映射关系插入到匹配链表;
所述获取模块,还用于在接收到来自摄像头的媒体流时,获取所述媒体流的目的IP地址和目标呼叫标识;
所述处理模块,还用于从所述匹配链表中查找与所述目的IP地址和所述目标呼叫标识均匹配的表项,并利用所述表项对所述目的IP地址进行地址还原。
6.根据权利要求5所述的装置,其特征在于,所述处理模块,具体用于判断所述匹配链表中是否存在与所述映射关系匹配的表项,并在判断所述匹配链表中不存在与所述映射关系匹配的表项时,将所述映射关系插入到匹配链表。
7.根据权利要求6所述的装置,其特征在于,所述处理模块,还用于在判断所述匹配链表中存在与所述映射关系匹配的表项时,更新所述表项对应的老化时间。
8.根据权利要求6所述的装置,其特征在于,所述判断模块,具体用于:
判断接收到的报文的目的端口是否为指定端口;
若否,确定该报文不是SIP邀请报文;
若是,在该报文携带指定字段时确定该报文是SIP邀请报文,在该报文未携带指定字段时确定该报文不是SIP邀请报文。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现本申请提供的任一基于SIP媒体协商的通信方法的步骤。
10.一种网络地址转换设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本申请提供的任一基于SIP媒体协商的通信方法的步骤。
CN202010739296.4A 2020-07-28 2020-07-28 一种基于sip媒体协商的通信方法、装置和nat设备 Active CN111885219B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010739296.4A CN111885219B (zh) 2020-07-28 2020-07-28 一种基于sip媒体协商的通信方法、装置和nat设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010739296.4A CN111885219B (zh) 2020-07-28 2020-07-28 一种基于sip媒体协商的通信方法、装置和nat设备

Publications (2)

Publication Number Publication Date
CN111885219A CN111885219A (zh) 2020-11-03
CN111885219B true CN111885219B (zh) 2023-04-07

Family

ID=73201793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010739296.4A Active CN111885219B (zh) 2020-07-28 2020-07-28 一种基于sip媒体协商的通信方法、装置和nat设备

Country Status (1)

Country Link
CN (1) CN111885219B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103414798A (zh) * 2013-07-31 2013-11-27 中国联合网络通信集团有限公司 基于网络地址转换的通信方法、设备和系统
WO2018050007A1 (zh) * 2016-09-13 2018-03-22 中兴通讯股份有限公司 用户终端访问本地网络的方法和装置和计算机存储介质
CN108156269A (zh) * 2016-12-05 2018-06-12 财团法人资讯工业策进会 网络地址转换服务器及其网络地址转换方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100514196B1 (ko) * 2003-02-14 2005-09-13 삼성전자주식회사 네트웍 어드레스 변환 및 세션 관리 시스템 및 그 방법
WO2007061345A1 (en) * 2005-11-24 2007-05-31 Telefonaktiebolaget Lm Ericsson (Publ) A method and arrangement for enabling multimedia communication
CN101257435B (zh) * 2007-02-28 2011-08-17 上海亿人通信终端有限公司 基于nat-pt的sip应用层网关的实现方法
CN102035813B (zh) * 2009-09-30 2016-01-20 中兴通讯股份有限公司 端到端呼叫的实现方法、端到端呼叫终端及系统
CN102291415B (zh) * 2011-09-08 2014-05-14 中国联合网络通信集团有限公司 媒体流处理方法、系统及家庭网关
CN110933180B (zh) * 2019-12-10 2023-05-12 深信服科技股份有限公司 一种通信建立方法、装置、负载设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103414798A (zh) * 2013-07-31 2013-11-27 中国联合网络通信集团有限公司 基于网络地址转换的通信方法、设备和系统
WO2018050007A1 (zh) * 2016-09-13 2018-03-22 中兴通讯股份有限公司 用户终端访问本地网络的方法和装置和计算机存储介质
CN108156269A (zh) * 2016-12-05 2018-06-12 财团法人资讯工业策进会 网络地址转换服务器及其网络地址转换方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李卿,乔元松,郑慧.SIP穿越防火墙/NAT(-PT)的探讨和设计.计算机工程与设计.2005,(05),全文. *

Also Published As

Publication number Publication date
CN111885219A (zh) 2020-11-03

Similar Documents

Publication Publication Date Title
US10932317B2 (en) Uninterrupted transmission of internet protocol transmissions during endpoint changes
US20090225960A1 (en) Method and system for establishing connection to called terminal
CN101060464B (zh) 地址变换装置、消息处理方法及网络系统
JP5169362B2 (ja) セッション情報複製方法、前記方法を実行する呼制御サーバ及び前記方法のプログラム
CN1239003C (zh) 处理会话发起协议系统的会话信息的方法
US20030110257A1 (en) Method for performing a load distribution between session initiation protocol servers within an intra domain
CN102137199B (zh) 呼叫中心通话录音的方法、装置和系统
CN110933180B (zh) 一种通信建立方法、装置、负载设备及存储介质
CN101188643A (zh) 联系目的地信息登记方法及程序、网络系统和节点
US8064468B2 (en) Method for providing function of registering in session initiation protocol and SIP load balancer of enabling the method
CN102984402A (zh) 一种VoIP数据包的处理方法及系统
CN111885219B (zh) 一种基于sip媒体协商的通信方法、装置和nat设备
US20040160985A1 (en) System and method for network address translation and session management
CN108418758A (zh) 一种单包识别方法及流量引导方法
US20090016520A1 (en) Apparatus, method, computer program product, and terminal device for controlling communications
US20050141531A1 (en) Communication relay method and relay device
CN103414836A (zh) 接入基于ip的电话会议的处理方法及装置
CN110266902B (zh) VoIP信令与媒体数据关联系统、方法
KR102545276B1 (ko) 통신 단말 기반의 그룹 통화 보안 장치 및 방법
CN112333344B (zh) 一种线路代理方法、装置、代理服务器及存储介质
US9274846B2 (en) Technique for determining a chain of individual functions associated with a service
KR20090073316A (ko) 이동통신 단말기의 어플리케이션 실행 제어 시스템 및 그제어방법
US20180159823A1 (en) Network address translation server and network address translation method thereof
JP2003046646A (ja) Ip電話システムにおける通話録音システム
CN102137090A (zh) 一种登陆voip网络的方法及鉴权服务器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant