CN106921624A - Session border controller and data transmission method - Google Patents

Session border controller and data transmission method Download PDF

Info

Publication number
CN106921624A
CN106921624A CN201510995963.4A CN201510995963A CN106921624A CN 106921624 A CN106921624 A CN 106921624A CN 201510995963 A CN201510995963 A CN 201510995963A CN 106921624 A CN106921624 A CN 106921624A
Authority
CN
China
Prior art keywords
data
layer
packet
sent
information
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.)
Granted
Application number
CN201510995963.4A
Other languages
Chinese (zh)
Other versions
CN106921624B (en
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.)
Beijing Feinno Communication Technology Co Ltd
Original Assignee
Beijing Feinno Communication Technology 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 Beijing Feinno Communication Technology Co Ltd filed Critical Beijing Feinno Communication Technology Co Ltd
Priority to CN201510995963.4A priority Critical patent/CN106921624B/en
Publication of CN106921624A publication Critical patent/CN106921624A/en
Application granted granted Critical
Publication of CN106921624B publication Critical patent/CN106921624B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

The invention discloses a kind of Session Border Controller and data transmission method, belong to Internet technical field.Method includes:Data pass through layer under limited network, receive the data to be transmitted bag that session setup terminal is sent using the first designated port, and the information of data to be transmitted bag and the first designated port is sent to data analysis layer;Data analysis layer receives the information of data to be transmitted bag and the first designated port, stores the mapping relations that the information and date of the first designated port is passed through between the information of layer, and data to be transmitted bag is sent to data transfer layer;Data transfer layer receives data to be transmitted bag, and data to be transmitted bag is sent to external network, is sent to session receiving terminal by external network.Without third party device, it is the session setup terminal transmission data bag under limited network to pass through layer by data to the present invention, reduces the flow consumption of data transmission procedure, reduces data transmission delay, improves the ageing of data.

Description

Session Border Controller and data transmission method
Technical field
The present invention relates to Internet technical field, more particularly to a kind of Session Border Controller and data transmission method.
Background technology
With the development of Internet technology, network security has turned into influence national security, social stability, the weight of economic development Big problem.In order to ensure enterprise inner network safety, increasing company sets NAT (Network Address in enterprises Translation, network address translation), the network equipment such as fire wall, carried out strictly with the port accessed terminal in enterprise Limitation, for example, only allow the port such as terminal access 53,80,433 in enterprise.Herein under network limited scene, when whole in enterprise When end needs to be conversated with the other-end in external network, how to carry out data transmission, more closed as those skilled in the art The problem of note.
In Internet technical field, SBC (Session Border Control, border conversation controller) is deployed in enterprise Internal network border, can be IMS (IP Multimedia, IP multimedia subsystem), VoIP (Voice over Internet Protocol, digital telephone) etc. external network network security, service quality, interoperability etc. be provided ensure, be in enterprise eventually End accesses the key of external network.Under limited network scene, to realize data transfer, prior art is mainly by SBC Third party device is disposed in (Session Border Control, border conversation controller) front end, and the third party device is used as enterprise Bridge between terminal and SBC in the industry, can receive the packets such as terminal sends in enterprise under limited network voice, video, will The packet for receiving is sent to SBC after being split as multiple small data packets, is sent to other-end by external network by SBC.
Realize it is of the invention during, inventor find prior art at least there is problems with:
Data are transmitted by third party device, not only increase the flow consumption of data transmission procedure, and increase Data transmission delay.
The content of the invention
In order to solve problem of the prior art, a kind of Session Border Controller and data transfer are the embodiment of the invention provides Method.The technical scheme is as follows:
First aspect, there is provided a kind of Session Border Controller, the Session Border Controller includes:Data pass through mould Block, data processing module, data transmission module;
The data pass through module, are sent using the first designated port for receiving session setup terminal under limited network Data to be transmitted bag, and the information of the data to be transmitted bag and the first designated port is sent to data processing module;
The data processing module, for receive the data pass through module transmission data to be transmitted bag and first specify The information of port, stores the mapping relations that the information and the data of first designated port are passed through between the information of module, And send to the data transmission module data to be transmitted bag;
The data transmission module, for receiving the data to be transmitted bag that the data processing module sends, by institute State data to be transmitted bag to send to external network, sent to session receiving terminal by the external network.
With reference in a first aspect, in the first possible implementation of first aspect, the type of packet includes signaling Packet and media data packet;
Correspondingly, the data processing module includes signaling data processing unit and media data processing unit;
The data transmission module includes signaling data transmission unit and media data transmission unit.
With reference to the first possible implementation of first aspect, in second possible implementation of first aspect In, when the packet waiting for transmission is signaling data bag, the signaling data processing unit is worn for receiving the data The signaling data bag that more module sends, and store the information of first designated port and the data pass through module information it Between mapping relations;
The signaling data transmission unit, for receiving the signaling data bag that the signaling data processing unit sends, will The signaling data bag is sent to external network, is sent to the session receiving terminal by the external network;
The signaling data transmission unit, is additionally operable to receive the response that the session receiving terminal is sent by external network Signaling data bag, and the response signaling packet is sent to the signaling data processing unit;
The signaling data processing unit, is additionally operable to the information and the data of first designated port according to storage The mapping relations passed through between the information of module, the response signaling packet are sent to the data and pass through module;
The data pass through module, are additionally operable to receive the response signaling packet, and by first designated port The response signaling packet is sent to the session setup terminal.
With reference to the first possible implementation of first aspect, in the third possible implementation of first aspect In, when the data to be transmitted bag is media data packet, the media data processing unit is passed through for receiving the data The media data packet that module sends, and store the information and the data of first designated port and pass through between the information of module Mapping relations;
The media data transmission unit, for receiving the media data packet that the media data processing unit sends, will The media data packet is sent to external network, is sent to the session receiving terminal by the external network;
The media data transmission unit, is additionally operable to receive the response that the session receiving terminal is sent by external network Media data packet, and the response media data packet is sent to the media data processing unit;
The media data processing unit, is additionally operable to the information and the data of first designated port according to storage The mapping relations passed through between the information of module, the response media data packet are sent to the data and pass through module;
The data pass through module, are additionally operable to receive the response media data packet, and by first designated port The response media data packet is sent to the session setup terminal.
With reference to the third possible implementation of first aspect to first aspect, the 4th kind in first aspect is possible In implementation, the data are passed through the packet transmitted between module and the session setup terminal and carry protocol version Field, agreement time version number field, sequence-number field, data packet number field, destination address field (DAF), destination interface field, number According to the type field of bag, the length field of packet.
With reference to the third possible implementation of first aspect to first aspect, the 5th kind in first aspect is possible In implementation, the Session Border Controller also passes through module including non-, and the Session Border Controller is applied to network and receives Limit scene and the unrestricted scene of network;
When network is unrestricted, it is described it is non-pass through module, for receiving untethered network under session setup terminal use The data to be transmitted bag of two designated ports transmission is simultaneously sent to the data processing module;The data processing module, is additionally operable to Store the mapping relations between the non-information for passing through module and second designated port, and by the data to be transmitted bag Send to the data transmission module;
The data processing module, is additionally operable to receive the response data packet that the data transmission module sends, and according to depositing Mapping relations between the described non-information for passing through module and second designated port of storage, using second designated port The response data packet is sent to described and non-passes through module;It is described it is non-pass through module, be additionally operable to receive the data processing mould The response data packet that block sends, and the response data packet is sent to the session setup terminal, the response data packet bag Include response signaling packet and response media data packet.
Second aspect, there is provided a kind of data transmission method, methods described is applied to Session Border Controller, the session Boarder controller passes through layer, data analysis layer, data transfer layer including data, and methods described includes:
The data pass through layer under limited network, receive session setup terminal using the to be passed of the first designated port transmission Transmission of data bag, and the information of the data to be transmitted bag and the first designated port is sent to data analysis layer;
The data analysis layer receives the data and passes through the data to be transmitted bag of layer transmission and the letter of the first designated port Breath, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and treat described Transmission packet is sent to the data transfer layer;
The data transfer layer receives the data to be transmitted bag that the data analysis layer sends, by the number to be transmitted Sent to external network according to bag, sent to session receiving terminal by the external network.
With reference to second aspect, in the first possible implementation of second aspect, the data analysis layer includes letter Data analysis layer and media data process layer are made, the data transfer layer includes signaling data transport layer and media data transmission Layer, the type of packet includes signaling data bag and media data packet, when the data to be transmitted bag is signaling data bag, institute State and send to data analysis layer the information of the data to be transmitted bag and the first designated port, including:
The data are passed through layer and send to the signaling data information of the signaling data bag and the first designated port Process layer;
The data analysis layer receives the data and passes through the data to be transmitted bag of layer transmission and the letter of the first designated port Breath, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and treat described Transmission packet is sent to the data transfer layer, including:
The signaling data process layer receives the signaling data bag and the first designated ends that the data pass through layer transmission The information of mouth, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and will The signaling data bag is sent to the signaling data transport layer;
Methods described also includes:
The signaling data transport layer receives the response signaling data that the session receiving terminal is sent by external network Bag, and the response signaling packet is sent to the signaling data process layer;
The signaling data process layer passes through layer according to the information of first designated port of storage with the data In mapping relations between information, the response signaling packet is sent to the data and passes through layer;
The data are passed through layer and receive the response signaling packet, and by first designated port by the response Signaling data bag is sent to the session setup terminal.
With reference to second aspect, in second possible implementation of second aspect, the data analysis layer includes letter Data analysis layer and media data process layer are made, the data transfer layer includes signaling data transport layer and media data transmission Layer, the type of packet includes signaling data bag and media data packet, when the data to be transmitted bag is media data packet, institute State and send to data analysis layer the information of the data to be transmitted bag and the first designated port, including:
The data are passed through layer and send to the media data information of the media data packet and the first designated port Process layer;
The data analysis layer receives the data and passes through the data to be transmitted bag of layer transmission and the letter of the first designated port Breath, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and treat described Transmission packet is sent to the data transfer layer, including:
The media data process layer receives the media data packet and the first designated ends that the data pass through layer transmission The information of mouth, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and will The media data packet is sent to media data transmission layer;
Methods described also includes:
The media data transmission layer receives the response media data packet that session receiving terminal is sent by external network, and The response media data packet is sent to the media data process layer;
The media data process layer passes through layer according to the information of first designated port of storage with the data In mapping relations between information, the response media data packet is sent to the data and passes through layer;
The data are passed through layer and receive the response media data packet, and by first designated port by the response Media data packet is sent to the session setup terminal.
With reference to second possible implementation of second aspect to second aspect, the third in second aspect is possible In implementation, the Session Border Controller also passes through layer including non-, and methods described is applied to network limited scene and network Unrestricted scene;
When network is unrestricted, methods described also includes:
It is described it is non-pass through layer receive untethered network under session setup terminal using the second designated port send described in treat Transmission packet is simultaneously sent to the data analysis layer, and the data analysis layer storage non-layer that passes through is specified with described second Mapping relations between the information of port, and the data to be transmitted bag is sent to the data transfer layer;
The data transfer layer receives the data to be transmitted bag that the data analysis layer sends, and will be described to be transmitted Packet is sent to the external network, is sent to the session receiving terminal by the external network;
When the response data packet that the session receiving terminal is sent by external network is received, the data transfer layer The response data packet is sent to the data analysis layer;
The data analysis layer receives the response data packet, and is referred to described second according to the described non-layer that passes through of storage Mapping relations between the information of fixed end mouthful, the response data packet is sent to described non-wear using second designated port More layer;The non-layer that passes through receives the response data packet that the data analysis layer sends, and by the response data packet send to The session setup terminal, the response data packet includes response signaling packet and response media data packet.
The beneficial effect that technical scheme provided in an embodiment of the present invention is brought is:
Without third party device, it is the session setup terminal transmission data under limited network to pass through layer by data Bag, reduces the flow consumption of data transmission procedure, reduces data transmission delay, improves the ageing of data.
Brief description of the drawings
Technical scheme in order to illustrate more clearly the embodiments of the present invention, below will be to that will make needed for embodiment description Accompanying drawing is briefly described, it should be apparent that, drawings in the following description are only some embodiments of the present invention, for For those of ordinary skill in the art, on the premise of not paying creative work, other can also be obtained according to these accompanying drawings Accompanying drawing.
Fig. 1 is a kind of Organization Chart of data transmission system that one embodiment of the invention is provided;
Fig. 2 is a kind of data transmission method flow chart that another embodiment of the present invention is provided;
Fig. 3 is a kind of data transmission method flow chart that another embodiment of the present invention is provided;
Fig. 4 is a kind of form schematic diagram for passing through agreement that another embodiment of the present invention is provided;
Fig. 5 is a kind of transmitting procedure schematic diagram of signaling data bag that another embodiment of the present invention is provided;
Fig. 6 is a kind of schematic diagram of level of abstraction with each plane dynamic binding process of another embodiment of the present invention offer;
Fig. 7 is a kind of signal for carrying out data transmission process based on binding result that another embodiment of the present invention is provided Figure;
Fig. 8 is a kind of structural representation of Session Border Controller that another embodiment of the present invention is provided;
Fig. 9 is a kind of structural representation of Session Border Controller that another embodiment of the present invention is provided.
Specific embodiment
To make the object, technical solutions and advantages of the present invention clearer, below in conjunction with accompanying drawing to embodiment party of the present invention Formula is described in further detail.
Referring to Fig. 1, it illustrates a kind of Organization Chart of data transmission system, the data transmission system includes session setup end End, the first Session Border Controller (SBC), IMS network, the second Session Border Controller (SBC) and session receiving terminal.
Session setup terminal (UE_A) is the terminal in corporate intranet, and the session setup terminal can be intelligent hand The terminal with network connecting function such as machine, PC, panel computer, in order to protect enterprise inner network safety, session setup The network that terminal is connected is generally in constrained state, only allows the ports such as session setup terminal access 53,80,433.
IMS network is a kind of brand-new multimedia service form, and it disclosure satisfy that existing terminal client is more novel, more various The multimedia service demand of change.
Session receiving terminal (UE_B) can have network connecting function for smart mobile phone, PC, panel computer etc. Terminal, the network that the session receiving terminal is connected can be limited network, or unrestricted network.
First Session Border Controller is deployed in the corporate intranet border of session setup terminal connection, is session setup terminal With the vital tie point of IMS network, network security, service quality, interoperability etc. can be provided for external networks such as IMS Ensure.Second Session Border Controller is deployed in the corporate intranet border of session receiving terminal connection, be session receiving terminal with The vital tie point of IMS network, or the external network such as IMS provides network security, service quality, interoperability etc. Ensure.Functional module and the work(of each functional module that second Session Border Controller and the first Session Border Controller are included Can be identical, it is described in detail by taking the first boarder controller as an example below.
First Session Border Controller passes through layer, data analysis layer, data transfer layer and non-passes through layer including data.
Wherein, data pass through layer acquiescence using 80 ports (non-encrypted port), 433 ports (encryption port) transmission data Bag, the data transfer of the first Session Border Controller cannot be accessed when session setup terminal is in corporate intranet by normal port During layer, data pass through layer can be by 433 ports or 80 port transmission signaling data bags or media data packet.
According to the type of the packet for being transmitted, data transfer layer includes signaling data transport layer and media data transmission Layer.Signaling data transport layer is used to transmit signaling data bag, for example, being produced during user's registration, calling, keep-alive, on-hook etc. Signaling data bag, the typical protocol that signaling data transport layer is supported be SIP (Session Initation Protocol, Session initiation protocol).Media data transmission layer is for transmitting the packets, matchmaker such as media data packet, such as voice, the video of user The typical protocol that volume data transport layer is supported is RTP (Real-time Transport Protocol, RTP).
According to the type of the packet for being transmitted, data analysis layer includes that signaling data process layer and media data are processed Layer, wherein, signaling data process layer is used to process signaling data bag, transmit, and media data process layer is used for media Packet is processed, transmitted.
The non-layer that passes through is used for when network is unrestricted, the packet that reception, transmission session initiating terminal send.According to being passed The type of defeated packet, it is non-to pass through that layer passes through layer including non-signaling and non-media passes through layer.Non-signaling passes through layer for receiving The signaling data bag that session setup terminal sends under untethered network, and the signaling data bag that will be received sent to signaling data Process layer.Non-media passes through layer for receiving the media data packet that session setup terminal sends under untethered network, and will receive To media data packet send to media data process layer.
In all embodiments of the invention, data are passed through layer and be that is to say and pass through plane, and it is also first that non-signaling passes through layer Control plane (outward), non-media is passed through layer and that is to say first user plane (outward), and signaling data transport layer that is to say the first control Plane (interior), media transport layer that is to say first user plane (interior), and signaling data process layer that is to say that the first control plane is taken out As layer, media data process layer that is to say first user plane level of abstraction.Wherein, the first control plane (interior) and external network phase Even, for signaling data bag to be sent to external network, while can also receive the response signaling packet of external network transmission;The One user plane (interior) is connected with external network, for media data packet to be sent to external network, while receiving external network The response media data packet of transmission.First control plane level of abstraction is arranged at the first control plane (interior) and the first control plane (outward) between, the transmittance process of signaling data bag can be decoupled, the signaling data for passing through plane transmission is received when network limited Bag, the mapping relations that storage is passed through between the information of the first port that plane and session initiating terminal are used;When network is not received The signaling data bag of the first control plane (outward) transmission, the first control plane of storage (outward) and session initiating terminal institute are received in limited time Mapping relations between the information of the second port of use;First user plane level of abstraction be arranged at first user plane (interior) with Between first user plane (outward), the transmittance process of media data packet can be decoupled, be received when network limited and pass through plane hair The media data packet sent, the mapping that storage is passed through between the information of the first port that plane and session initiating terminal are used is closed System, when network is unrestricted receive first user plane (outward) send media data packet, storage first user plane (outward) with Mapping relations between the information of the second port that session setup terminal is used.
A kind of data transmission method is the embodiment of the invention provides, the method is applied to Session Border Controller, the session Boarder controller passes through layer, data analysis layer, data transfer layer including data, referring to the method flow that Fig. 2, the present embodiment are provided Including:
201st, data pass through layer under limited network, receive session setup terminal using the to be passed of the first designated port transmission Transmission of data bag, and the information of data to be transmitted bag and the first designated port is sent to data analysis layer.
202nd, data analysis layer receives data and passes through the data to be transmitted bag of layer transmission and the information of the first designated port, deposits The mapping relations that the information and date of the first designated port is passed through between the information of layer are stored up, and data to be transmitted bag is sent to number According to transport layer.
203rd, data transfer layer receives the data to be transmitted bag that data analysis layer sends, and data to be transmitted bag is sent to outer Portion's network, is sent to session receiving terminal by external network.
Method provided in an embodiment of the present invention, without third party device, layer is passed through under limited network by data Session setup terminal transmission data bag, reduce data transmission procedure flow consumption, reduce data transmission delay, improve Data it is ageing.
In another embodiment of the present invention, data analysis layer includes that signaling data process layer and media data are processed Layer, data transfer layer includes signaling data transport layer and media data transmission layer, the type of packet include signaling data bag and Media data packet, when data to be transmitted bag is signaling data bag, the information of data to be transmitted bag and the first designated port is sent out Data analysis layer is delivered to, including:
Data are passed through layer and send to signaling data process layer the information of signaling data bag and the first designated port;
Data analysis layer receives data and passes through the data to be transmitted bag of layer transmission and the information of the first designated port, storage the The mapping relations that the information and date of one designated port is passed through between the information of layer, and data to be transmitted bag is sent to data biography Defeated layer, including:
Signaling data process layer receives data and passes through the signaling data bag of layer transmission and the information of the first designated port, storage The mapping relations that the information and date of the first designated port is passed through between the information of layer, and signaling data bag is sent to signaling number According to transport layer;
The method also includes:
Signaling data transport layer receives the response signaling packet that session receiving terminal is sent by external network, and will ring Signaling data bag is answered to send to signaling data process layer;
Signaling data process layer is according to reflecting that the information and date of the first designated port of storage is passed through between the information of layer Penetrate in relation, response signaling packet is sent to data and passes through layer;
Data pass through layer receive response signaling packet, and by the first designated port by response signaling packet send to Session setup terminal.
In another embodiment of the present invention, data analysis layer includes that signaling data process layer and media data are processed Layer, data transfer layer includes signaling data transport layer and media data transmission layer, the type of packet include signaling data bag and Media data packet, when data to be transmitted bag is media data packet, the information of data to be transmitted bag and the first designated port is sent out Data analysis layer is delivered to, including:
Data are passed through layer and send to media data process layer the information of media data packet and the first designated port;
Data analysis layer receives data and passes through the data to be transmitted bag of layer transmission and the information of the first designated port, storage the The mapping relations that the information and date of one designated port is passed through between the information of layer, and data to be transmitted bag is sent to data biography Defeated layer, including:
Media data process layer receives data and passes through the media data packet of layer transmission and the information of the first designated port, storage The mapping relations that the information and date of the first designated port is passed through between the information of layer, and media data packet is sent to media number According to transport layer;
The method also includes:
Media data transmission layer receives the response media data packet that session receiving terminal is sent by external network, and will ring Media data packet is answered to send to media data process layer;
Media data process layer is according to reflecting that the information and date of the first designated port of storage is passed through between the information of layer Penetrate in relation, response media data packet is sent to data and passes through layer;
Data pass through layer receive response media data packet, and by the first designated port will respond media data packet send to Session setup terminal.
In another embodiment of the present invention, Session Border Controller also passes through layer including non-, and method is applied to network Limitation scene and the unrestricted scene of network;
When network is unrestricted, the method also includes:
It is non-pass through layer receive untethered network under session setup terminal using the second designated port send data to be transmitted Wrap and send to data analysis layer, the mapping between the non-information for passing through layer and the second designated port of data analysis layer storage is closed System, and data to be transmitted bag is sent to data transfer layer;
Data transfer layer receives the data to be transmitted bag that data analysis layer sends, and data to be transmitted bag is sent to outside Network, is sent to session receiving terminal by external network;
When the response data packet that session receiving terminal is sent by external network is received, data transfer layer is by number of responses Sent to data analysis layer according to bag;
Data analysis layer receives response data packet, and according between the non-information for passing through layer and the second designated port for storing Mapping relations, layer is passed through by response data packet is non-using the second designated port;The non-layer that passes through receives what data analysis layer sent Response data packet, and response data packet is sent to session setup terminal, response data packet includes response signaling packet and sound Answer media data packet.
Above-mentioned all optional technical schemes, can form the alternative embodiment of the disclosure, herein no longer using any combination Repeat one by one.
A kind of data transmission method is the embodiment of the invention provides, the method is applied to the session side shown in above-mentioned Fig. 1 Boundary's controller, the Session Border Controller including data pass through layer, data analysis layer, data transfer layer, it is non-pass through layer, wherein, The defeated process layer of data include signaling data process layer and media data process layer, data transfer layer include signaling data transport layer and Media data transmission layer, it is non-to pass through that layer passes through layer including non-signaling and non-media passes through layer.With Session Border Controller and session Initiating terminal is performed as a example by this method, and referring to Fig. 3, the method flow that the present embodiment is provided includes:
301st, whether session setup end-probing current network is limited.
Wherein, session setup terminal is the terminal in the internal networks such as company, cause group, and session setup terminal is such as Smart mobile phone, panel computer etc..In Internet technical field, session setup terminal by Session Border Controller to extranets , it is necessary to first whether detection current network is limited before network transmission data, carried out data transmission using different strategies.Session is sent out Terminal is played during whether detection current network limited, can with Session Border Controller it is non-pass through layer and carry out TCP shake hands, UDP (User Datagram Protocol, User Data Protocol) throwings can also be carried out with the non-layer that passes through of Session Border Controller Pass.Pass through layer as first user plane (outward) and the first control plane (outward) with non-, session setup terminal by with first user Plane (outward) or the first control plane (outward) carry out TCP shake hands detection current network it is whether limited as a example by, if session setup end End carries out TCP and shakes hands successfully with first user plane (outward) or the first control plane (outward), it is determined that current network is not limited; If session setup terminal carries out TCP and shakes hands unsuccessfully with first user plane (outward) or the first control plane (outward), it is determined that when It is preceding network limited.
302nd, when session setup end-probing to current network is by limited time, the data of Session Border Controller are passed through layer and are passed through TCP shakes hands to be set up with session initiating terminal and is connected.
When session setup terminal shaken hands by TCP or UDP deliver detect current network be limited, session setup terminal according to The level of security of data to be transmitted bag, the different port for passing through layer to the data of Session Border Controller is initiated TCP and is shaken hands trial. In the present embodiment, the data of Session Border Controller are passed through layer acquiescence and are carried out data transmission using two ports, wherein, 433 Port is encryption port, and the packet of privacy of user is related to for transmitting, and 80 ports are non-encrypted port, are not related to for transmitting The packet of privacy of user.The data of Session Border Controller pass through layer by TCP shake hands with session initiating terminal set up be connected Process it is as follows:
Session setup terminal is passed through layer and shake hands for the first time with the data of Session Border Controller:Session setup terminal to Data are passed through layer and send SYN (Synchronize Sequence Numbers, synchronizing sequence label) bags, and enter SYN_SENT State, waits pending data to pass through layer and confirms.
Session setup terminal is passed through layer and carries out second handshake with the data of Session Border Controller:Sent out when session is received When playing the SYN bags that terminal sends, data are passed through layer and send ACK (Acknowledgement, confirmation by session setup terminal Character) bag confirms to the SYN bags for receiving, while data pass through layer also can send a SYN bag to session setup terminal, Session setup terminal enters SYN_RECV states.
Session setup terminal is passed through layer and shake hands for the third time with the data of Session Border Controller:Session setup terminal connects Receive data pass through layer transmission SYN-ACK bags when, and to data pass through layer return one ACK bag, hereafter, session setup terminal Layer is passed through with data enter connection status.
After the completion of above-mentioned three-way handshake, session setup terminal is set up by passing through layer with data and is connected, and passes through to be set up Connection, data are passed through between layer and session initiating terminal can transmission packet.
303rd, session setup terminal is passed through layer and sends to be passed using the first designated port to the data of Session Border Controller Defeated packet.
In order to targetedly transmit data, the embodiment of the invention provides one kind and pass through agreement, this passes through agreement is used for The packet of the transmission passed through to data under limited network between layer and session transmission terminal is encoded, and is additionally operable to unrestricted The non-packet transmitted between layer and session initiating terminal that passes through is encoded under network, when packet is in Session Border Controller During internal transmission, pass through agreement without using this and packet is encoded.Pass through the attribute that agreement at least indicates packet Information and transmission information, wherein, the attribute information of packet includes the sequence number of packet, currently passes through waiting for transmission in agreement The quantity of packet, the type of packet, length of packet etc.;The attribute information of packet includes destination address information, mesh Port information etc..Fig. 4 shows the specific form for passing through agreement, for the implication of each field in Fig. 4, refers to following tables 1。
Table 1
According to the quantity of Count, Destination IP, Destination Port, Type, Data Length, Data There can be many parts, for example, the quantity of Count is 4 parts, then can have 4 Destination IP, 4 Destination Port, 4 packets, 4 kinds of data lengths etc..Wherein, the type of packet includes signaling data bag and media data packet, data The species Type of bag can be with difference, when Type is different, can be with the polytype packet of simultaneous transmission.
When the data that data are passed through between layer and session initiating terminal using it is default pass through agreement and encoded after, coding Carried in packet afterwards protocol version number field, agreement time version number field, sequence-number field, data packet number field, Destination address field (DAF), destination interface field, the type field of packet, length field of packet etc..
When session setup terminal needs to be communicated with the session receiving terminal in external network, session setup end End is operated by detecting user, obtains packet, the packet is assembled, and the packet is carried out based on agreement is passed through Coding, obtains data to be transmitted bag, and pass through layer by the data in advance with Session Border Controller using the first designated port The connection set up, data to be transmitted bag is sent to data and passes through layer, and destination address, mesh are carried in the packet waiting for transmission The field, the destination address directed session receiving terminal such as port.
It should be noted that under limited network, when session setup terminal passes through layer transmission data to be transmitted bag to data The first designated port and the data for being used are passed through 80 ports that layer acquiescence use, 433 ports and are differed.Wherein, 80 ports, 433 ports are real physical port.In order to improve efficiency of transmission, multiple virtual ports are included in 80 ports, 433 ports, The first designated port described in the present embodiment is a virtual port in 80 ports or 433 ports.It is to be passed when detecting When the private data of user is included in defeated packet, terminal will choose a virtual port from 433 ports, and by the void Plan port sends to data data to be transmitted bag passes through layer;The privacy not comprising user in packet waiting for transmission is detected During data, terminal will choose a virtual port from 80 ports, and by the virtual port by data to be transmitted bag send to Data pass through layer.
304th, when receive session setup terminal using the first designated port send data to be transmitted bag, session border control The data of device processed are passed through layer and judge whether the packet waiting for transmission is director data bag, if it is, performing step 305.
Because in the present embodiment, data analysis layer includes signaling data process layer and media data process layer, different Data analysis layer the type of treatable packet be different, therefore, refer to using first when session setup terminal is received After the data to be transmitted bag that fixed end mouthful sends, Session Border Controller will determine that whether the data to be transmitted bag is director data Bag, so as to take corresponding delivering path to be transmitted the data to be transmitted bag.
Because data to be transmitted bag is based on passing through agreement and being encoded, data to be transmitted bag has data type indicating bit, Data pass through layer by obtaining the field on the data type indicating bit, can determine whether the type of data to be transmitted bag, and then judge Whether the data to be transmitted bag is director data bag.
305th, the data of Session Border Controller pass through layer by the information of signaling data bag and the first designated port send to Signaling data process layer.
After it is signaling data bag to judge data to be transmitted bag, the data of Session Border Controller are passed through layer and obtain session Initiating terminal sends the port information of the first designated port that signaling data bag is used, and signaling data bag and first are specified The port information of port is sent to signaling data process layer.
306th, the information and date of signaling data process layer first designated port of storage of Session Border Controller passes through layer Information between mapping relations, and signaling data bag is sent to signaling data transport layer.
The signaling data process layer of Session Border Controller safeguards a database, is stored in the database network limited The mapping relations that the information and date of the first designated port of session setup terminal is passed through between the information of layer under scene.Work as reception The information and date that the first designated port of layer transmission is passed through to data passes through the information of layer, signaling data process layer storage first The mapping relations that the information and date of designated port is passed through between the information of layer, and signaling data bag is sent to signaling data biography Defeated layer.
307th, the signaling data transport layer of Session Border Controller sends to external network signaling data bag, by extranets Network is sent to session receiving terminal.
The signaling data transport layer of Session Border Controller receives signaling number bag after, to the signaling data for receiving Bag treatment, for example, the signaling data bag to receiving authenticated, labeled data head, the modification operation such as data, and then according to place Entrained destination address field (DAF) in packet after reason, the signaling data bag after treatment is sent to external network, by outside Network sends session receiving terminal corresponding to destination address.
Signaling data bag is sent for external network to the process of the corresponding session receiving terminal of destination address, can be divided into The following two kinds situation:
If the first situation, the network of session receiving terminal are unrestricted, external network can send signaling data bag To the signaling data transport layer with session receiving terminal side, sent to homonymy by the signaling data transport layer of session receiving terminal side Signaling data process layer, then the corresponding session receiving terminal of destination address is sent directly to by signaling data process layer.
If second situation, session receiving terminal is network limited, external network can by signaling data bag send to With the signaling data transport layer of session receiving terminal side, sent to homonymy by the signaling data transport layer of session receiving terminal side Signaling data process layer, then layer is passed through by the data that signaling data process layer sends homonymy, passing through layer by data sends to purpose The corresponding session receiving terminal in address.
Above-mentioned either the first situation or second situation, the signaling data process layer of session receiving terminal side can Storage session receiving terminal receives the mapping relations between the information and different layers information of the particular port used during packet, Except that, in the case where network is unrestricted, what the signaling data process layer of session receiving terminal side was stored is specific Mapping relations between the information of port and the signaling data process layer of homonymy;In the case where network is unrestricted, session is received What the signaling data process layer of end side was stored is that the mapping that the information of particular port and the data of homonymy are passed through between layer is closed System.
308th, when the response signaling packet that session receiving terminal is sent by external network is received, session border control The signaling data transport layer of device processed sends to signaling data process layer response signaling packet.
Session receiving terminal receive session setup terminal transmission signaling data bag after, if with session initiating terminal Communicated, then can be transmitted the signaling data that response signaling packet is sent to Session Border Controller by external network Layer, is sent to signaling data process layer response signaling packet by signaling data transport layer, in the response signaling packet extremely The fields, the ground where the backhaul destination address directed session initiating terminal such as backhaul destination address, backhaul destination interface are carried less Location, the backhaul destination interface is session setup terminal and sends the first designated port that data to be transmitted bag is used.
309th, information and date of the signaling data process layer of Session Border Controller according to the first designated port of storage The mapping relations passed through between the information of layer, response signaling packet are sent to data and pass through layer.
When the response signaling packet for receiving the transmission of signaling data transport layer, at the signaling data of Session Border Controller Reason layer is parsed by response signaling packet, obtains the backhaul destination interface field carried in response signaling packet, And the mapping relations passed through between the information of layer according to the information and date of the first designated port of storage, get first and specify The corresponding data of information of port pass through the information of layer, and then response signaling packet is sent to data pass through layer.
310th, when response signaling packet is received, the data of Session Border Controller pass through layer by the first designated port Response signaling packet is sent to session setup terminal.
After response data packet is received, the data of Session Border Controller pass through letter of the layer according to the first designated port Breath, determines the first designated port, and is sent to session setup terminal response signaling packet by the first designated port, so that Realize the communication between session setup terminal and session receiving terminal.
So far, signaling data bag complete transmission process is completed by above-mentioned steps 301~310.For the process, it is Readily appreciate, below with data pass through layer as first pass through plane, signaling data process layer for the first control plane level of abstraction, Signaling data transport layer be the first control plane (interior) as a example by illustrate, referring specifically to step (1)~(10) in Fig. 5.
1st, session setup terminal UE _ A passes through plane and initiates to session receiving terminal UE_ using the first designated port to first The calling of B;
2nd, first plane reception call signaling is passed through, and call signaling is sent to the first control plane level of abstraction;
3rd, the first control plane level of abstraction storage first is passed through between the information of plane and the information of the first designated port Mapping relations;
4th, the first control plane level of abstraction sends to the first control plane (interior) call signaling;
5th, the first control plane (interior) sends to IMS network call signaling
6th, IMS network sends to the first control plane (interior) the response instruction of UE_B;
7th, the first control plane (interior) is sent instruction is responded to the first control plane level of abstraction;
8th, the first control plane level of abstraction passes through the information of plane and the information of the first designated port according to the first of storage Between mapping relations, obtain the first information for passing through plane;
9th, the first control plane level of abstraction will be responded to instruct to send to first and pass through plane;
10th, first plane is passed through by response instruction transmission to UE_A.
When it is media data that data to be transmitted bag is judged in step 304, for the transmitting procedure of media data packet, can Referring to following step (a)~(f):
A the data of (), Session Border Controller are passed through layer and send to media data process layer media data packet.
After it is media data packet to judge data to be transmitted bag, the data of Session Border Controller are passed through layer and obtain session Initiating terminal sends the port information of the first designated port that media data packet is used, and by media data packet and designated port Port information send to media data process layer.
B information and date that the media data process layer of (), Session Border Controller stores the first designated port passes through layer Information between mapping relations, and by media data packet send to media data transmission layer.
The media data process layer of Session Border Controller safeguards a database, is stored in the database network limited The mapping relations that the information and date of the designated port of session setup terminal is passed through between the information of layer under scene.When receiving number The information of layer is passed through according to the information and date of the first designated port for passing through layer transmission, media data process layer storage first is specified The mapping relations that the information and date of port is passed through between the information of layer, and media data packet is sent to media data transmission Layer.
C the media data transmission layer of (), Session Border Controller sends to external network media data packet, by extranets Network is sent to session receiving terminal.
After the media data transmission layer of Session Border Controller receives media data, at the media data that receives Reason, for example, the media data to receiving authenticated, labeled data head, the modification operation such as data, and then according to treatment after Entrained destination address field (DAF) in packet, the media data packet after treatment is sent to external network, is sent out by external network Deliver to the corresponding session receiving terminal of destination address.
Media data packet is sent for external network to the process of the corresponding session receiving terminal of destination address, can be divided into The following two kinds situation:
If the first situation, the network of session receiving terminal are unrestricted, external network can send media data packet To the media data transmission layer with session receiving terminal side, sent to homonymy by the media data transmission layer of session receiving terminal side Media data process layer, then the corresponding session receiving terminal of destination address is sent directly to by media data process layer.
If second situation, session receiving terminal is network limited, external network can by media data packet send to With the media data transmission layer of session receiving terminal side, sent to homonymy by the media data transmission layer of session receiving terminal side Media data process layer, then layer is passed through by the data that media data process layer sends homonymy, passing through layer by data sends to purpose The corresponding session receiving terminal in address.
Above-mentioned either the first situation or second situation, the media data process layer of session receiving terminal side can Storage session receiving terminal receives the mapping relations between the information and different layers information of the particular port used during packet, Except that, in the case where network is unrestricted, what the media data process layer of session receiving terminal side was stored is specific Mapping relations between the information of port and the media data process layer of homonymy;In the case where network is unrestricted, session is received What the media data process layer of end side was stored is that the mapping that the information of particular port and the data of homonymy are passed through between layer is closed System.
(d), when the response media data packet that session receiving terminal is sent by external network is received, session border control The media data transmission layer of device processed sends to media data process layer response media data packet.
Session receiving terminal receive session setup terminal transmission media data packet after, if with session initiating terminal Communicated, then can be sent media data packet is responded to the media data transmission of Session Border Controller by external network Layer, is sent to media data process layer response media data packet by media data transmission layer, in the response media data packet extremely The fields, the ground where the backhaul destination address directed session initiating terminal such as backhaul destination address, backhaul destination interface are carried less Location, the backhaul destination interface is session setup terminal and sends the first designated port that data to be transmitted bag is used.
Information and date of the media data process layer of (e), Session Border Controller according to the first designated port of storage The mapping relations passed through between the information of layer, response media data packet are sent to data and pass through layer.
When the response media data packet for receiving media data transmission layer transmission, at the media data of Session Border Controller Reason layer is parsed by response signaling packet, obtains the backhaul destination interface field carried in response signaling packet, And the mapping relations passed through between the information of layer according to the information and date of the first designated port of storage, get first and specify The corresponding data of information of port pass through the information of layer, and then send to data and pass through layer response media data packet.
F, (), when response media data packet is received, the data of Session Border Controller pass through layer will be rung by designated port Media data packet is answered to send to session setup terminal.
After response data packet is received, the data of Session Border Controller pass through letter of the layer according to the first designated port Breath, determines the first designated port, and is sent media data packet is responded to session setup terminal by the first designated port, so that Realize the communication between session setup terminal and session receiving terminal.
Layer is passed through with data pass through plane, signaling data process layer for the first control plane level of abstraction, media number as first According to process layer be first user plane level of abstraction, signaling data transport layer be the first control plane (interior), media data transmission layer As a example by for first user plane (interior), for above-mentioned signaling data bag and the transmitting procedure of media data packet, following two can be divided into Individual process:
The dynamic binding process of the first process, level of abstraction and other layers.
The dynamic binding principle of level of abstraction and other layers:When session setup terminal has packets need to transmit, packet Plane is passed through by first to send to corresponding level of abstraction, pass through plane by level of abstraction record first is used with session initiating terminal First port between mapping relations, so as to subsequently carry out packet send when, will sent to session setup terminal Packet via binding plane of passing through forwarded.
Referring to Fig. 4, when session setup terminal needs to be communicated with session receiving terminal, session setup terminal is based on wearing More agreement obtains data to be transmitted bag, and will will be treated using the first designated port to needing transmission packet to be encoded, assembled Transmission packet sends to first and passes through plane.First passes through plane receives the data to be transmitted bag that session setup terminal sends Afterwards, treat transmission packet to be parsed, according to the type field of packet, judge whether the data to be transmitted bag is signaling number According to bag, if the data to be transmitted bag is signaling data bag, signaling data bag is sent to the first control plane level of abstraction.The One control plane level of abstraction receives signaling data bag, and storage first is passed through between the information of plane and the information of the first designated port Mapping relations, and signaling data bag is sent to the first control plane (interior), the first control plane (interior) is patrolled according to standard SBC Volume, signaling data bag is processed, and then result is sent to internal system, sent to extranets by internal system Network.If the data to be transmitted bag is not signaling data bag, judge whether the data to be transmitted bag is media data packet, if The data to be transmitted bag is not media data packet, then miscue information is returned to session setup terminal, if the number to be transmitted It is media data packet according to bag, then sends to first user plane level of abstraction media data packet.First user plane level of abstraction connects Receive media data packet, the mapping relations passed through between the information of plane and the information of the first designated port of storage first, and by matchmaker Volume data bag is sent to first user plane (interior), and first user plane (interior) is entered according to standard SBC logics to media data packet Row treatment, and then result is sent to internal system, sent to external network by internal system.
Second process, the binding result based on the first process, carry out the transmission process of response data packet.
Binding result based on level of abstraction during first with each plane, when external network by data to be transmitted bag send to Session receiving terminal, it is forwarded over for response data packet when session receiving terminal returns to response data packet by external network Journey can be found in Fig. 5.
If the response data packet that session receiving terminal is returned is response signaling packet, external network is by response signaling Packet is sent to the first control plane (interior), and response signaling packet is sent flat to the first control by the first control plane (interior) Face level of abstraction, the first control plane level of abstraction according to the first of storage pass through the information of plane and the first designated port information it Between mapping relations, obtain and first pass through the information of plane, and response signaling packet is sent to first pass through plane, first Pass through after plane receives response signaling packet, response signaling packet is encoded based on agreement passed through, and by with The connection of session setup terminal connection, using designated port, response signaling packet is sent to session setup terminal, session hair After start and end termination receives response signaling packet, response signaling packet is decoded, obtain signaling data.
If the media data packet that session receiving terminal is returned is media signaling data bag, external network is by media signaling Packet is sent to the first control plane (interior), and media signaling data bag is sent flat to the first control by the first control plane (interior) Face level of abstraction, the first control plane level of abstraction according to the first of storage pass through the information of plane and the first designated port information it Between mapping relations, obtain and first pass through the information of plane, and media signaling data bag is sent to first pass through plane, first Pass through after plane receives media signaling data bag, media signaling data bag is encoded based on agreement passed through, and by with The connection of session setup terminal connection, using the first designated port, media signaling data bag is sent to session setup terminal, meeting After words initiating terminal receives media signaling data bag, media signaling data bag is decoded, obtain signaling data.
It should be noted that the method that the present embodiment is provided is not only applicable to network limited scene, network is also applied to Unrestricted scene.When network is unrestricted, it is non-pass through layer and can receive session setup terminal under untethered network refer to using second The data to be transmitted bag that fixed end mouthful sends, and the data to be transmitted bag is sent to data analysis layer, data analysis layer storage is non- The mapping relations passed through between the information of layer and the second designated port, and data to be transmitted bag is sent to data transfer layer, number The data to be transmitted bag that data analysis layer sends is received according to transport layer, and data to be transmitted bag is sent to external network, by outer Portion's network is sent to session receiving terminal.When the response data packet that session receiving terminal is sent by external network is received, Data transfer layer sends to data analysis layer response data packet, and data analysis layer receives response data packet, and according to storage Mapping relations between the non-information for passing through layer and the second designated port, using the second designated port by response data packet send to Non- to pass through layer, the non-layer that passes through receives the response data packet that data analysis layer sends, and response data packet is sent to session setup Terminal.According to the type of data to be transmitted bag, under the above-mentioned unrestricted scene of network, the transmitting procedure of packet can be divided into as follows Two kinds of situations:
The first situation:Data to be transmitted bag is signaling data bag.
When network is unrestricted, session setup terminal is sent out using the second designated port under non-signaling passes through layer untethered network The signaling data bag sent, and the signaling data bag is sent to signaling data process layer, signaling data process layer storage non-signaling The mapping relations passed through between the information of layer and the second designated port, and signaling data bag is sent to signaling data transport layer, Signaling data transport layer receives the signaling data bag that signaling data process layer sends, and signaling data bag is sent to extranets Network, is sent to session receiving terminal by external network.Believed by the response that external network sends when session receiving terminal is received When making packet, signaling data transport layer sends to signaling data process layer, signaling data process layer response signaling packet Response signaling packet is received, and the mapping passed through between the information of layer and the second designated port according to the non-signaling of storage is closed System, response signaling packet is sent to non-signaling pass through layer using the second designated port, and non-signaling is passed through layer and receives signaling number According to the response data packet that process layer sends, and response data packet is sent to session setup terminal.
Second situation:Data to be transmitted bag is media data packet.
When network is unrestricted, session setup terminal is sent out using the second designated port under non-media passes through layer untethered network The media data packet sent, and the media data packet is sent to media data process layer, media data process layer storage non-media The mapping relations passed through between the information of layer and the second designated port, and media data packet is sent to media data transmission layer, Media data transmission layer receives the media data packet that data analysis layer sends, and media data packet is sent to external network, by External network is sent to session receiving terminal.When receiving the response media data that session receiving terminal is sent by external network Bao Shi, media data transmission layer sends to media data process layer response media data packet, and media data process layer is received rings Media data packet is answered, and the mapping relations passed through between the information of layer and the second designated port according to the non-media of storage, use Second designated port will respond media data packet and send to non-media and pass through layer, and non-media passes through a layer receiving media data process layer The response data packet of transmission, and response data packet is sent to session setup terminal.
The purpose for setting level of abstraction in the present embodiment in Session Border Controller is that the routing policy of data forwarding is relied on Level of abstraction is selected, based on the data transmission system shown in Fig. 1, when session setup terminal UE _ A is in limited network, Fire wall only allows the port of session setup terminal access 80, the address of 433 ports in enterprise, and session receiving terminal UE_B is in not In limited network, free the public network can be accessed, now the interaction flow between UE_A and UE_B is as follows:
It is as follows that the first situation, UE_A send call signaling process to UE_B:
UE_A passes through calling of the plane initiation to UE_B using the first designated port to first, and first passes through plane reception exhales Signaling is, and call signaling is sent to the first control plane level of abstraction, the first control plane level of abstraction storage first passes through flat Mapping relations between the information of the information in face and the first designated port, and call signaling is sent to the first control plane (interior), the first control plane (interior) sends to IMS network call signaling, is sent to the second control call signaling by IMS network Plane (interior) processed, the second control plane (interior) sends to the second control plane level of abstraction call signaling, and the second control plane is taken out As layer sends to the second control plane (outward) call signaling, call signaling is sent to UE_B by the second control plane (outward).
UE_B receives the call request of UE_A, and response instruction, the second control plane are sent to the second control plane (outward) (outward) response instruction is sent to the second control plane level of abstraction, will respond instruction by the second control plane level of abstraction sends to the Two control planes (interior), the second control plane (interior) will respond instruction and send to IMS network, and instruction hair will be responded by IMS network The first control plane (interior) is delivered to, is sent instruction is responded to the first control plane level of abstraction by the first control plane (interior), the One control plane level of abstraction is closed according to the first of storage the mapping passed through between the information of plane and the information of the first designated port System, response instruction is sent to second and passes through plane, and pass through plane by first is sent using the first designated port by instruction is responded To UE_A.
Second situation, UE_A are as follows to UE_B transmissions voice data process:
UE_A passes through plane and sends voice data to UE_B using the first designated port by first, and first passes through plane connects Voice data is received, and voice data is sent to first user plane level of abstraction, first user plane level of abstraction storage first is worn Mapping relations more between the information of the information of plane and the first designated port, and voice data is sent to first user plane (interior), first user plane (interior) sends to IMS network voice data, is sent voice data to second by IMS network and used Family plane (interior), second user plane (interior) sends to second user plane level of abstraction voice data, and second user plane is taken out As layer sends to second user plane (outward) voice data, voice data is sent to UE_B by second user plane (outward).
After UE_B receives the voice data that UE_A sends, response voice data, second are sent to second user plane (outward) User plane (outward) is sent voice data is responded to second user plane level of abstraction, and will be responded by the second control plane level of abstraction Voice data is sent to second user plane (interior), and second user plane (interior) is sent voice data is responded to IMS network, by IMS network will respond voice data and send to first user plane (interior), and first user plane level of abstraction is according to first for storing The mapping relations passed through between the information of plane and the information of the first designated port, response voice data is sent to first user Plane level of abstraction, first user plane level of abstraction will respond voice data and send to first and pass through plane, and plane is passed through by first Sent voice data is responded to UE_A using the first designated port.
It should be noted that above-mentioned illustrate so that session setup terminal UE _ A is in limited network as an example, work as UE_ A is in unrestricted network, between UE_A and UE_B when carrying out data transmission, plane is passed through without first, you can Freely it is transmitted, specific transmitting procedure is as follows:
It is as follows that the first situation, UE_A send call signaling process to UE_B:
Callings of the UE_A using the second designated port to the first control plane (outward) initiation to UE_B, the first control plane (outward) receive call signaling, and call signaling sent to the first control plane level of abstraction, the first control plane level of abstraction according to Mapping relations between the information of the first control plane (outward) and the information of the second designated port of storage, and call signaling is sent out The first control plane (interior) is delivered to, the first control plane (interior) sends to IMS network call signaling, will be called by IMS network Signaling is sent to the second control plane (interior), and call signaling is sent abstract to the second control plane by the second control plane (interior) Call signaling is sent to the second control plane (outward), will be exhaled by the second control plane (outward) by layer, the second control plane level of abstraction Signaling is made to send to UE_B.
UE_B receives the call request of UE_A, and response instruction, the second control plane are sent to the second control plane (outward) (outward) response instruction is sent to the second control plane level of abstraction, will respond instruction by the second control plane level of abstraction sends to the Two control planes (interior), the second control plane (interior) will respond instruction and send to IMS network, and instruction hair will be responded by IMS network The first control plane (interior) is delivered to, is sent instruction is responded to the first control plane level of abstraction by the first control plane (interior), the One control plane level of abstraction is according to reflecting between the information of the first control plane (outward) and the information of the second designated port of storage Relation is penetrated, response instruction is sent to outside the first control plane, will rung using the second designated port by the first control plane (outward) Transmission to UE_A should be instructed.
Second situation, UE_A are as follows to UE_B transmissions voice data process:
UE_A sends voice data by first user plane (outward) using the second designated port to UE_B, and first user is put down Face (outward) receives voice data, and voice data is sent to first user plane level of abstraction, and first user plane level of abstraction is deposited Mapping relations between the information of first user plane (outward) and the information of the second designated port of storage, and voice data is sent To first user plane (interior), first user plane (interior) sends to IMS network voice data, by IMS network by audio number According to sending to second user plane (interior), second user plane (interior) sends to second user plane level of abstraction voice data, Second user plane level of abstraction sends to second user plane (outward) voice data, by second user plane (outward) by audio number According to transmission to UE_B.
After UE_B receives the voice data that UE_A sends, response voice data, second are sent to second user plane (outward) User plane (outward) is sent voice data is responded to second user plane level of abstraction, and will be responded by second user plane level of abstraction Voice data is sent to second user plane (interior), and second user plane (interior) is sent voice data is responded to IMS network, by IMS network is sent voice data is responded to first user plane (interior), and voice data will be responded by first user plane (interior) Send to first user plane level of abstraction, first user plane level of abstraction according to the information of the first user plane (outward) of storage with Mapping relations between the information of the second designated port, response voice data is sent to first user plane (outward), by first Sent voice data is responded to UE_A using the second designated port outside user plane.
Method provided in an embodiment of the present invention, without third party device, layer is passed through under limited network by data Session setup terminal transmission data bag, reduce data transmission procedure flow consumption, reduce data transmission delay, improve Data it is ageing.
Referring to Fig. 8, a kind of structural representation of Session Border Controller is the embodiment of the invention provides, the session border control Device processed includes:Data pass through module 801, data processing module 802, data transmission module 803.
Data pass through module 801, are sent using the first designated port for receiving session setup terminal under limited network Data to be transmitted bag, and the information of data to be transmitted bag and the first designated port is sent to data processing module;
Data processing module 802, the data to be transmitted bag and the first designated port of module transmission are passed through for receiving data Information, store the mapping relations passed through between the information of module of information and date of the first designated port, and by number to be transmitted Sent to data transmission module according to bag;
Data transmission module 803, the data to be transmitted bag for receiving data processing module transmission, by data to be transmitted bag Send to external network, sent to session receiving terminal by external network.
In another embodiment of the present invention, the type of packet includes signaling data bag and media data packet;
Correspondingly, data processing module 802 includes signaling data processing unit and media data processing unit;
Data transmission module 803 includes signaling data transmission unit and media data transmission unit.
In another embodiment of the present invention, when packet waiting for transmission is signaling data bag, signaling data treatment Unit, the signaling data bag of module transmission is passed through for receiving data, and stores the information and date of the first designated port and passed through Mapping relations between the information of module;
Signaling data transmission unit, the signaling data bag for receiving the transmission of signaling data processing unit, by signaling data Bag is sent to external network, is sent to session receiving terminal by external network;
Signaling data transmission unit, is additionally operable to receive the response signaling data that session receiving terminal is sent by external network Bag, and response signaling packet is sent to signaling data processing unit;
Signaling data processing unit, is additionally operable to be passed through according to the information and date of the first designated port of storage the letter of module Mapping relations between breath, response signaling packet are sent to data and pass through module;
Data pass through module 801, are additionally operable to receive response signaling packet, and by the first designated port by response signaling Packet is sent to session setup terminal.
In another embodiment of the present invention, when data to be transmitted bag is media data packet, media data treatment is single Unit, the media data packet of module transmission is passed through for receiving data, and stores the information and date of the first designated port and pass through mould Mapping relations between the information of block;
Media data transmission unit, for the media data packet that receiving media data processing unit sends, by media data Bag is sent to external network, is sent to session receiving terminal by external network;
Media data transmission unit, is additionally operable to receive the response media data that session receiving terminal is sent by external network Bag, and response media data packet is sent to media data processing unit;
Media data processing unit, is additionally operable to be passed through according to the information and date of the first designated port of storage the letter of module Mapping relations between breath, response media data packet are sent to data and pass through module;
Data pass through module 801, are additionally operable to receive response media data packet, and will respond media by the first designated port Packet is sent to session setup terminal.
In another embodiment of the present invention, data pass through between module and session initiating terminal transmit packet it is equal Carry protocol version number field, agreement time version number field, sequence-number field, data packet number field, destination address field (DAF), mesh Peer-port field, the type field of packet, the length field of packet.
Referring to Fig. 9, Session Border Controller also passes through module 804 including non-, and Session Border Controller is applied to network and receives Limit scene and the unrestricted scene of network;
It is non-to pass through module 804 when network is unrestricted, for receiving untethered network under session setup terminal use second The data to be transmitted bag of designated port transmission is simultaneously sent to data processing module;Data processing module 802, is additionally operable to store non-wearing Mapping relations more between the information of module and the second designated port, and data to be transmitted bag is sent to data transmission module;
Data processing module 802, is additionally operable to receive the response data packet that data transmission module sends, and according to the non-of storage The mapping relations passed through between the information of module and the second designated port, using the second designated port by response data packet send to It is non-to pass through module 804;It is non-to pass through module 804, it is additionally operable to receive the response data packet that data processing module sends, and by number of responses Sent to session setup terminal according to bag, response data packet includes response signaling packet and response media data packet.
It should be noted that the data described in the present embodiment pass through module passes through layer, data processing mould corresponding to data Block corresponds to data analysis layer, data transmission module and passes through layer, signaling corresponding to non-corresponding to data transfer layer, non-module of passing through Data processing unit corresponds to signaling data process layer, media data processing unit and corresponds to media data process layer, signaling number Correspond to signaling data transport layer, media data transmission unit according to transmission unit and correspond to media data transmission layer.Wherein, data It can be to be arranged at the One function module that data are passed through on layer to pass through module, and data processing module can be to be arranged at data One function module on reason layer, data transmission module can be the One function module being arranged on data transfer layer, non-to wear More module can be to be arranged at the non-module passed through on layer.Certainly, data are passed through module and can also pass through layer for data, number Can also be data analysis layer according to processing module, data transmission module can also be on data transfer layer, non-module of passing through may be used also Think and non-pass through layer.
Device provided in an embodiment of the present invention, without third party device, layer is passed through under limited network by data Session setup terminal transmission data bag, reduce data transmission procedure flow consumption, reduce data transmission delay, improve Data it is ageing.
It should be noted that:The Session Border Controller that above-described embodiment is provided carries out data transmission under limited network When, only carried out with the division of above-mentioned each functional module for example, in practical application, as needed can divide above-mentioned functions With being completed by different functional module, will the internal structure of Session Border Controller be divided into different functional modules, with complete Into all or part of function described above.In addition, above-described embodiment provide Session Border Controller with limited network Under the embodiment of the method that carries out data transmission belong to same design, it implements process and refers to embodiment of the method, here no longer Repeat.
One of ordinary skill in the art will appreciate that realizing that all or part of step of above-described embodiment can be by hardware To complete, it is also possible to instruct the hardware of correlation to complete by program, described program can be stored in a kind of computer-readable In storage medium, storage medium mentioned above can be read-only storage, disk or CD etc..
The foregoing is only presently preferred embodiments of the present invention, be not intended to limit the invention, it is all it is of the invention spirit and Within principle, any modification, equivalent substitution and improvements made etc. should be included within the scope of the present invention.

Claims (10)

1. a kind of Session Border Controller, it is characterised in that the Session Border Controller includes:Data pass through module, data Processing module, data transmission module;
The data pass through module, for receiving session setup terminal under limited network using treating that the first designated port sends Transmission packet, and the information of the data to be transmitted bag and the first designated port is sent to data processing module;
The data processing module, the data to be transmitted bag and the first designated port of module transmission are passed through for receiving the data Information, store the mapping relations that the information and the data of first designated port are passed through between the information of module, and will The data to be transmitted bag is sent to the data transmission module;
The data transmission module, for receiving the data to be transmitted bag that the data processing module sends, treats described Transmission packet is sent to external network, is sent to session receiving terminal by the external network.
2. Session Border Controller according to claim 1, it is characterised in that the type of packet includes signaling data bag And media data packet;
Correspondingly, the data processing module includes signaling data processing unit and media data processing unit;
The data transmission module includes signaling data transmission unit and media data transmission unit.
3. Session Border Controller according to claim 2, it is characterised in that when the packet waiting for transmission is signaling During packet, the signaling data processing unit passes through the signaling data bag of module transmission, and store for receiving the data The mapping relations that the information and the data of first designated port are passed through between the information of module;
The signaling data transmission unit, for receiving the signaling data bag that the signaling data processing unit sends, will be described Signaling data bag is sent to external network, is sent to the session receiving terminal by the external network;
The signaling data transmission unit, is additionally operable to receive the response signaling that the session receiving terminal is sent by external network Packet, and the response signaling packet is sent to the signaling data processing unit;
The signaling data processing unit, is additionally operable to be passed through with the data according to the information of first designated port of storage Mapping relations between the information of module, the response signaling packet are sent to the data and pass through module;
The data pass through module, are additionally operable to receive the response signaling packet, and by first designated port by institute Response signaling packet is stated to send to the session setup terminal.
4. Session Border Controller according to claim 2, it is characterised in that when the data to be transmitted bag is media number During according to bag, the media data processing unit passes through the media data packet of module transmission, and store institute for receiving the data State the mapping relations that the information and the data of the first designated port are passed through between the information of module;
The media data transmission unit, for receiving the media data packet that the media data processing unit sends, will be described Media data packet is sent to external network, is sent to the session receiving terminal by the external network;
The media data transmission unit, is additionally operable to receive the response media that the session receiving terminal is sent by external network Packet, and the response media data packet is sent to the media data processing unit;
The media data processing unit, is additionally operable to be passed through with the data according to the information of first designated port of storage Mapping relations between the information of module, the response media data packet are sent to the data and pass through module;
The data pass through module, are additionally operable to receive the response media data packet, and by first designated port by institute Response media data packet is stated to send to the session setup terminal.
5. the Session Border Controller according to any claim in Claims 1-4, it is characterised in that the data Pass through the packet transmitted between module and the session setup terminal and carry protocol version number field, agreement time version number's word Section, sequence-number field, data packet number field, destination address field (DAF), destination interface field, the type field of packet, data The length field of bag.
6. the Session Border Controller according to any claim in Claims 1-4, it is characterised in that the session Boarder controller also passes through module including non-, and the Session Border Controller is applied to network limited scene and the unrestricted field of network Scape;
When network is unrestricted, it is described it is non-pass through module, refer to using second for receiving session setup terminal under untethered network The data to be transmitted bag of fixed end mouthful transmission is simultaneously sent to the data processing module;The data processing module, is additionally operable to storage Mapping relations between the non-information for passing through module and second designated port, and the data to be transmitted bag is sent To the data transmission module;
The data processing module, is additionally operable to receive the response data packet that the data transmission module sends, and according to storage Mapping relations between the non-information for passing through module and second designated port, using second designated port by institute State response data packet and send to described and non-pass through module;It is described it is non-pass through module, be additionally operable to receive the data processing module hair The response data packet sent, and the response data packet is sent to the session setup terminal, the response data packet includes ringing Answer signaling data bag and response media data packet.
7. a kind of data transmission method, it is characterised in that methods described is applied to Session Border Controller, the session border control Device processed passes through layer, data analysis layer, data transfer layer including data, and methods described includes:
The data pass through layer under limited network, receive the number to be transmitted that session setup terminal is sent using the first designated port According to bag, and the information of the data to be transmitted bag and the first designated port is sent to data analysis layer;
The data analysis layer receives the data and passes through the data to be transmitted bag of layer transmission and the information of the first designated port, deposits Store up the mapping relations that the information and the data of first designated port are passed through between the information of layer, and by the number to be transmitted Sent to the data transfer layer according to bag;
The data transfer layer receives the data to be transmitted bag that the data analysis layer sends, by the data to be transmitted bag Send to external network, sent to session receiving terminal by the external network.
8. method according to claim 7, it is characterised in that the data analysis layer includes signaling data process layer and matchmaker Volume data process layer, the data transfer layer includes signaling data transport layer and media data transmission layer, the type bag of packet Signaling data bag and media data packet are included, it is described by the number to be transmitted when the data to be transmitted bag is signaling data bag Sent to data analysis layer according to the information of bag and the first designated port, including:
The data are passed through layer and send to the signaling data treatment information of the signaling data bag and the first designated port Layer;
The data analysis layer receives the data and passes through the data to be transmitted bag of layer transmission and the information of the first designated port, deposits Store up the mapping relations that the information and the data of first designated port are passed through between the information of layer, and by the number to be transmitted Sent to the data transfer layer according to bag, including:
The signaling data process layer receives the signaling data bag and the first designated port that the data pass through layer transmission Information, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and will be described Signaling data bag is sent to the signaling data transport layer;
Methods described also includes:
The signaling data transport layer receives the response signaling packet that the session receiving terminal is sent by external network, and The response signaling packet is sent to the signaling data process layer;
The signaling data process layer passes through the information of layer according to the information of first designated port of storage with the data Between mapping relations in, the response signaling packet is sent to the data and passes through layer;
The data are passed through layer and receive the response signaling packet, and by first designated port by the response signaling Packet is sent to the session setup terminal.
9. method according to claim 7, it is characterised in that the data analysis layer includes signaling data process layer and matchmaker Volume data process layer, the data transfer layer includes signaling data transport layer and media data transmission layer, the type bag of packet Signaling data bag and media data packet are included, it is described by the number to be transmitted when the data to be transmitted bag is media data packet Sent to data analysis layer according to the information of bag and the first designated port, including:
The data are passed through layer and send to the media data treatment information of the media data packet and the first designated port Layer;
The data analysis layer receives the data and passes through the data to be transmitted bag of layer transmission and the information of the first designated port, deposits Store up the mapping relations that the information and the data of first designated port are passed through between the information of layer, and by the number to be transmitted Sent to the data transfer layer according to bag, including:
The media data process layer receives the media data packet and the first designated port that the data pass through layer transmission Information, stores the mapping relations that the information and the data of first designated port are passed through between the information of layer, and will be described Media data packet is sent to media data transmission layer;
Methods described also includes:
Media data transmission layer receives the response media data packet that session receiving terminal is sent by external network, and by institute Response media data packet is stated to send to the media data process layer;
The media data process layer passes through the information of layer according to the information of first designated port of storage with the data Between mapping relations in, the response media data packet is sent to the data and passes through layer;
The data are passed through layer and receive the response media data packet, and by first designated port by the response media Packet is sent to the session setup terminal.
10. the method according to any claim in claim 7 to 9, it is characterised in that the Session Border Controller Layer also is passed through including non-, methods described is applied to network limited scene and the unrestricted scene of network;
When network is unrestricted, methods described also includes:
It is described it is non-pass through layer receive untethered network under session setup terminal using the second designated port send it is described to be transmitted Packet is simultaneously sent to the data analysis layer, and the data analysis layer stores the non-layer that passes through with second designated port Information between mapping relations, and the data to be transmitted bag is sent to the data transfer layer;
The data transfer layer receives the data to be transmitted bag that the data analysis layer sends, and by the data to be transmitted Bag is sent to the external network, is sent to the session receiving terminal by the external network;
When the response data packet that the session receiving terminal is sent by external network is received, the data transfer layer is by institute Response data packet is stated to send to the data analysis layer;
The data analysis layer receives the response data packet, and according to the described non-layer that passes through for storing with second designated ends Mouthful information between mapping relations, the response data packet is sent to described using second designated port non-is passed through Layer;The non-layer that passes through receives the response data packet that the data analysis layer sends, and the response data packet is sent to institute Session setup terminal is stated, the response data packet includes response signaling packet and response media data packet.
CN201510995963.4A 2015-12-25 2015-12-25 Session boundary controller and data transmission method Active CN106921624B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510995963.4A CN106921624B (en) 2015-12-25 2015-12-25 Session boundary controller and data transmission method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510995963.4A CN106921624B (en) 2015-12-25 2015-12-25 Session boundary controller and data transmission method

Publications (2)

Publication Number Publication Date
CN106921624A true CN106921624A (en) 2017-07-04
CN106921624B CN106921624B (en) 2020-05-12

Family

ID=59456372

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510995963.4A Active CN106921624B (en) 2015-12-25 2015-12-25 Session boundary controller and data transmission method

Country Status (1)

Country Link
CN (1) CN106921624B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108011754A (en) * 2017-11-27 2018-05-08 新华三技术有限公司 Turn control piece-rate system, backup method and device
CN115550591A (en) * 2022-09-02 2022-12-30 深圳市华运通科技股份有限公司 Video communication system, video communication method and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040057436A1 (en) * 2002-09-23 2004-03-25 Alcatel Method for intercepting control data, in particular quality of service data, and associated device
CN101018229A (en) * 2007-02-12 2007-08-15 华为技术有限公司 A method and firewall for the media service to penetrate the firewall
CN102377834A (en) * 2010-08-20 2012-03-14 鸿富锦精密工业(深圳)有限公司 Network address translation equipment and communication method
CN103392316A (en) * 2013-01-11 2013-11-13 华为技术有限公司 Method of traversing firewall, client, and media traversing server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040057436A1 (en) * 2002-09-23 2004-03-25 Alcatel Method for intercepting control data, in particular quality of service data, and associated device
CN101018229A (en) * 2007-02-12 2007-08-15 华为技术有限公司 A method and firewall for the media service to penetrate the firewall
CN102377834A (en) * 2010-08-20 2012-03-14 鸿富锦精密工业(深圳)有限公司 Network address translation equipment and communication method
CN103392316A (en) * 2013-01-11 2013-11-13 华为技术有限公司 Method of traversing firewall, client, and media traversing server

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
王琰 等: "基于SBC的SIP穿越NAT的研究与实现", 《陇东学院学报》 *
陈惠红 等: "SBC助VoIP穿越NAT的设计与实现", 《信息通信》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108011754A (en) * 2017-11-27 2018-05-08 新华三技术有限公司 Turn control piece-rate system, backup method and device
CN115550591A (en) * 2022-09-02 2022-12-30 深圳市华运通科技股份有限公司 Video communication system, video communication method and storage medium

Also Published As

Publication number Publication date
CN106921624B (en) 2020-05-12

Similar Documents

Publication Publication Date Title
EP1430682B1 (en) Protecting a network from unauthorized access
US7936750B2 (en) Packet transfer device and communication system
US20070186093A1 (en) System and method for providing security in a telecommunication network
CN100440850C (en) Method of multimedia service NAT traversing and system thereof
US20130308628A1 (en) Nat traversal for voip
US8788682B2 (en) Communication device, and method, in an internet protocol network, of controlling a communication device
CA2603341A1 (en) Voip proxy server
CN1535524A (en) Method and system for providing intelligent net control service in internet protocol telephone
CN106534319A (en) Method for direct access to target server through proxy server
JP2006254160A (en) Relay unit, communication system, control method therefor, and control program
US20030149783A1 (en) Address hopping of packet-based communications
CN105704137A (en) Method and system for transmitting voices based on TCP in VoIP
CN101146100A (en) A realization method of SIP network phone based on transmission protocol SCTP and DCCP
CN110650260A (en) System and method for intercommunication of network terminal audio internal and external networks
US20040133772A1 (en) Firewall apparatus and method for voice over internet protocol
CN106921624A (en) Session border controller and data transmission method
CN103905380B (en) Service call method, device and system
US7948971B2 (en) Method and device for controlling media resources, method and system for establishing calls
CN103888334A (en) VoIP multilayer encryption method and system in IP packet network
JP5926164B2 (en) High-speed distribution method and connection system for session border controller
WO2008095430A1 (en) A method and a system for preventing a media agency from hacker attacking
CN100484134C (en) Method for traversing NAT equipment/firewall by NGN service
US8582559B2 (en) System and method for handling media streams
KR101121230B1 (en) Sip base voip service protection system and the method
CN100502368C (en) Method for building call between multimedia apparatus

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
CP02 Change in the address of a patent holder

Address after: Room 810, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080

Patentee after: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building block A room 602

Patentee before: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder