[go: up one dir, main page]

CN100394719C - A voice communication method on mobile ad hoc network - Google Patents

A voice communication method on mobile ad hoc network Download PDF

Info

Publication number
CN100394719C
CN100394719C CNB200410046389XA CN200410046389A CN100394719C CN 100394719 C CN100394719 C CN 100394719C CN B200410046389X A CNB200410046389X A CN B200410046389XA CN 200410046389 A CN200410046389 A CN 200410046389A CN 100394719 C CN100394719 C CN 100394719C
Authority
CN
China
Prior art keywords
address
node
message
random number
communication
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.)
Expired - Fee Related
Application number
CNB200410046389XA
Other languages
Chinese (zh)
Other versions
CN1585329A (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.)
Phicomm Shanghai Co Ltd
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNB200410046389XA priority Critical patent/CN100394719C/en
Publication of CN1585329A publication Critical patent/CN1585329A/en
Application granted granted Critical
Publication of CN100394719C publication Critical patent/CN100394719C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明属于通信网络应用技术领域,是移动自组织网络上语音通信的实现方法,在IP地址动态配置情况下,移动自组织网络的节点地址具有可变更性,本发明能够消除移动自组织网络上地址变更对语音通信的影响。方法的步骤包括:在连接建立阶段,通过一个握手过程得到目标节点当前使用的真实IP地址,并在通信双方之间共享了一个随机数用于通信过程中的认证和加密。在完成连接建立进入通话状态后,每一方必须周期性地向另一方发送加密的地址通知消息,用来告知本方当前使用的IP地址,以此来保证能将本节点的地址变化情况及时地通知通信另一方,实现语音通信的自动切换,从而提高通信的可靠性。

Figure 200410046389

The invention belongs to the technical field of communication network applications, and is a method for implementing voice communication on a mobile ad hoc network. In the case of dynamic configuration of IP addresses, the node addresses of the mobile ad hoc network are changeable. Effect of Address Change on Voice Communications. The steps of the method include: in the connection establishment stage, the real IP address currently used by the target node is obtained through a handshake process, and a random number is shared between the communication parties for authentication and encryption in the communication process. After completing the connection establishment and entering the conversation state, each party must periodically send encrypted address notification messages to the other party to inform the party of the current IP address used, so as to ensure that the address changes of the node can be updated in a timely manner. Inform the other party of the communication to realize the automatic switching of the voice communication, thereby improving the reliability of the communication.

Figure 200410046389

Description

一种移动自组织网络上语音通信方法 A voice communication method on mobile ad hoc network

技术领域 technical field

本发明属于通信网络应用技术领域,特别是一种移动自组织网络上语音通信实现方法。The invention belongs to the technical field of communication network applications, in particular to a method for implementing voice communication on a mobile ad hoc network.

背景技术 Background technique

移动自组织网络(Mobile Ad Hoc Network-MANET)是一种具有高度动态拓扑结构、结点任意移动的、点对点的自创建、自组织、自管理的网络,它使得节点之间可以自由地进行通讯而无需经过基站、访问点等基础设施。文献[1]Ramanathan R,Redi J,“A Brief Overview of mobile Ad hoc Networks:Challengesand Directions”,IEEE Communications Magazine,50th Anniversary CommemorativeIssue[C],2002。在MANET内,通信节点的地址采用自动配置的技术,生成的地址经过重复地址检测的过程确认其在所属Ad Hoc网络内唯一后才被节点所使用。然而由于节点和网络的移动性,在MANET网络中经常会遇到地址冲突的问题,从而使节点的IP(Internet Protocol)地址发生变化。例如,移动节点A移动出了MANET的传输范围或者是此节点由于其它原因短暂地失去了与MANET网络内其他节点之间的联系。在此期间,节点B加入MANET组,它选择了与节点A同样的IP地址,并且经过重复地址检测没有发现地址冲突(因为节点A失去了联系),所以它就声明自己具有和节点A同样的IP地址。然而一段时间后,当节点A移动回到了MANET网络或者是排除了故障恢复和组内其它节点的联系时,节点A和节点B就产生了地址重复,它们当中就必须有一个改变自己的IP地址。又比如,两个原先独立的MANET网络由于移动汇聚成为一个MANET网络。由于原先两个网络是相互分离的,它们之间可能存在某些重复的地址。这样当两个网络融合后,就会出现地址冲突的问题,也就使得某些节点必须改变自己的IP地址。然而,目前所使用的语音通信VoIP(Voice overInternet Protocol)应用程序都是基于固定不变的源端和目的端IP地址,没有考虑到MANET上这种地址变更的情况,所以如果把它们应用于移动自组织网络中,当通信一方的地址发生变化以后,语音通信就会被错误地保持,节点将会和并非自己想要通信的节点进行语音通信,由此会产生很多的安全性问题。例如:在MANET中,节点A和B正在进行语音通信,此时由于与另一个MANET网络进行了合并,节点A和节点C发生了地址冲突,导致节点A的IP地址由x变成了y。然而节点B并不知道这种变化,从B发给A的语音包的目标地址仍然使用x,结果导致节点B错误地与节点C进行了通信。此外,如前所述,由于在移动自组织网络中通信设备的IP地址是不固定的,所以不能像在固定网络上实现的VoIP应用那样采用每个节点的IP地址来发起语音呼叫。取而代之的是给每个设备终端都设定一个通信ID,这个通信ID唯一标志一个节点,节点之间通过这个通信ID来发起语音呼叫。在每次语音呼叫连接建立之前,源节点都需要访问本节点的名字服务模块,名字服务模块负责维护一个本地的数据库,数据库中包含了一系列的记录,每一条记录都含有一个通信ID和IP地址的对应。这些记录是从本节点以前的通话历史中保存下来的。然而,本地数据库中记录的IP地址都只是一些历史信息,它并不一定能够确实反映目标节点当前使用的地址,因为有可能在上一次通话结束之后,目标节点的IP地址已经发生了变化,所以如果直接利用此地址建立语音呼叫连接,很可能会错误地同其它节点建立呼叫关系,这显然违背了我们VoIP应用程序的可靠性要求,因此我们必须在通信连接建立之前对此地址的有效性进行验证。Mobile Ad Hoc Network-MANET is a point-to-point self-creating, self-organizing and self-managing network with a highly dynamic topology, arbitrary movement of nodes, which enables free communication between nodes Without going through infrastructure such as base stations and access points. Literature [1] Ramanathan R, Redi J, "A Brief Overview of mobile Ad hoc Networks: Challenges and Directions", IEEE Communications Magazine, 50th Anniversary Commemorative Issue[C], 2002. In MANET, the address of the communication node adopts the technology of automatic configuration, and the generated address is used by the node after confirming that it is unique in the Ad Hoc network to which it belongs through the process of repeated address detection. However, due to the mobility of nodes and networks, address conflicts often occur in MANET networks, resulting in changes in IP (Internet Protocol) addresses of nodes. For example, the mobile node A moves out of the transmission range of the MANET or the node temporarily loses contact with other nodes in the MANET network due to other reasons. During this period, node B joins the MANET group, it chooses the same IP address as node A, and no address conflict is found after duplicate address detection (because node A lost contact), so it declares that it has the same IP address as node A IP address. However, after a period of time, when node A moves back to the MANET network or eliminates the fault recovery and contact with other nodes in the group, node A and node B have duplicate addresses, and one of them must change its IP address . Another example is that two originally independent MANET networks become one MANET network due to mobile convergence. Because the two networks were originally separated from each other, there may be some duplicate addresses between them. In this way, when the two networks are merged, the problem of address conflict will appear, which makes some nodes have to change their own IP addresses. However, currently used voice communication VoIP (Voice over Internet Protocol) applications are based on fixed source and destination IP addresses, which do not take into account the change of addresses on MANET, so if they are applied to mobile In an ad-hoc network, when the address of the communication party changes, the voice communication will be wrongly maintained, and the node will conduct voice communication with the node that it does not want to communicate with, which will cause many security problems. For example: In MANET, nodes A and B are communicating by voice. At this time, due to the merger with another MANET network, an address conflict occurs between node A and node C, causing the IP address of node A to change from x to y. However, node B does not know this change, and the destination address of the voice packet sent from B to A still uses x, resulting in node B communicating with node C by mistake. In addition, as mentioned above, since the IP address of the communication device in the mobile ad hoc network is not fixed, it cannot use the IP address of each node to initiate a voice call like the VoIP application implemented on the fixed network. Instead, a communication ID is set for each device terminal, which uniquely marks a node, and voice calls are initiated between nodes through this communication ID. Before each voice call connection is established, the source node needs to access the name service module of the node. The name service module is responsible for maintaining a local database. The database contains a series of records, and each record contains a communication ID and IP Address correspondence. These records are saved from the previous call history of this node. However, the IP addresses recorded in the local database are just some historical information, which may not reflect the address currently used by the target node, because it is possible that the IP address of the target node has changed after the last call, so If this address is directly used to establish a voice call connection, it is likely to establish a call relationship with other nodes by mistake, which obviously violates the reliability requirements of our VoIP application, so we must check the validity of this address before the communication connection is established. verify.

此外,为了便于在通信节点之间实现相互认证,提高可靠性。规定每个节点都产生本节点的公钥和私钥信息,并且公开本节点的公钥。任何两个需要相互通信的节点都必须知道对方的公钥。In addition, in order to facilitate mutual authentication between communication nodes, reliability is improved. It is stipulated that each node generates the public key and private key information of the node, and discloses the public key of the node. Any two nodes that need to communicate with each other must know each other's public key.

关于在MANET网络上如何获得真实合法的公钥问题,可以采用通信双方预共享的方式,也可以采用类似于文献[2]Asad Amir Pirzada,Chris McDonald,“Kerberos Assisted Authentication in Mobile Ad-hoc Network”,In 27th AustralasianComputer Science Conference,Dunedin,New Zealand,January 18-22,2004提到的方法,只不过在文献[2]提到的环境中,没有考虑地址变化的情况,公钥信息是和节点的IP地址绑定的,而我们的实现方案中公钥是和节点恒定不变的通信ID绑定的。Regarding how to obtain the real and legal public key on the MANET network, it can be pre-shared by both parties, or similar to the document [2] Asad Amir Pirzada, Chris McDonald, "Kerberos Assisted Authentication in Mobile Ad-hoc Network" , the method mentioned in 27th Australasian Computer Science Conference, Dunedin, New Zealand, January 18-22, 2004, but in the environment mentioned in [2], the address change is not considered, and the public key information is related to the node The IP address is bound, and in our implementation, the public key is bound to the constant communication ID of the node.

发明内容 Contents of the invention

本发明的目的在于提供一种移动自组织网络上语音通信(VoIP)的实现方法,它能够解决移动自组织网络上的地址变更问题,消除其对于VoIP应用的影响。The purpose of the present invention is to provide a voice communication (VoIP) implementation method on the mobile ad hoc network, which can solve the address change problem on the mobile ad hoc network and eliminate its impact on VoIP applications.

本发明属于通信网络应用领域,提出了一种适用于MANET的VoIP应用。它通过连接建立前增加握手过程,在通信双方之间共享随机数,通话过程中传送加密的地址通知消息等新型机制来保证在移动自组织网络上语音通信的可靠性,消除了MANET地址变更对VoIP的不良影响。The invention belongs to the application field of communication network, and proposes a VoIP application suitable for MANET. It ensures the reliability of voice communication on the mobile ad hoc network by increasing the handshake process before the connection is established, sharing random numbers between the communication parties, and transmitting encrypted address notification messages during the call, eliminating the need for MANET address changes. Bad effects of VoIP.

本发明建立在移动自组织网络(MANET)基础之上,MANET是一种由笔记本电脑、个人数字助理(PDA)、车载台等移动终端所组成的具有高度动态拓扑结构、节点任意移动、点对点自创建、自组织、自管理的网络。在这个网络中,每个节点都带有无线网卡,节点之间通过无线技术互联,并且以多跳的方式进行相互通信。此外,每个节点还配有声卡设备,可以对语音信号进行编解码处理等相应工作。The present invention is based on the mobile ad hoc network (MANET), which is composed of notebook computers, personal digital assistants (PDA), vehicle-mounted stations and other mobile terminals with a highly dynamic topological structure, arbitrary movement of nodes, and point-to-point self-organization. Create, self-organize, self-manage networks. In this network, each node has a wireless network card, and the nodes are interconnected through wireless technology and communicate with each other in a multi-hop manner. In addition, each node is also equipped with a sound card device, which can perform codec processing on voice signals and other corresponding work.

为了支持语音通信,节点首先要进行声卡和网卡的初始化工作,然后通过驱动网卡发送控制数据包进行连接建立前的握手过程。连接建立之后,通信节点驱动声卡对语音信号进行采集、编解码,以此来接收和播放声音,并且将编码压缩后的语音数据包通过网卡发送出去实现节点之间的语音通信。In order to support voice communication, the node must first initialize the sound card and the network card, and then send the control data packet by driving the network card to perform the handshake process before the connection is established. After the connection is established, the communication node drives the sound card to collect, encode and decode the voice signal to receive and play the sound, and sends the encoded and compressed voice data packets through the network card to realize the voice communication between nodes.

本发明是建立在计算机网络通信的基础上,通过计算机进行联络,来实现节点的语音通信。The invention is based on the computer network communication, and realizes the voice communication of the nodes through the communication of the computer.

本发明提供了一种在移动自组织网络中语音通信方法,该方法包括以下步骤:每个通信节点维护一个本地数据库,数据库中保存着本节点的历史通话记录,每一条记录都是<通信ID,IP地址>的二元组;在发起语音呼叫时,源节点首先访问本地数据库查找目标节点地址的历史记录,如果找到了目标节点地址的历史记录,则向该记录的目标节点地址发送单播查询消息以确认地址的有效性,如果源节点在规定时间内收到回复消息说明该地址真实有效,则根据此地址建立通信连接;否则,发送广播查询消息来得到目标节点的当前地址;在上述单播和广播查询消息中包含了源节点为本次语音通话产生的随机数,该随机数用目标节点的公钥进行了加密,只有目标节点才能正确解密随机数,源节点通过此随机数辨别回复消息的真实性,同时经过在节点之间发送查询和回复消息这么一个握手过程,在本次语音通信的源节点和目标节点之间就共享了一个随机数,该随机数可用作通信过程中的加密密钥和认证依据;在通信连接建立后的通话过程中,通信双方周期性地互发地址通知消息,地址通知消息使用握手阶段协商好的随机数作为密钥进行加密,包含序列号字段和随机数字段,当一个节点的地址发生变化,节点就通过地址通知消息及时地将变化后的地址发给对方,另一方解密消息后取消原先在旧地址上建立的连接转而在新地址上建立语音通信连接;此外,当一方在规定的时间内没有收到另一方发来的新的正确的地址通知消息时将释放当前的语音通信连接,保证即使通信双方的地址同时发生改变,通信连接也会被及时释放,避免语音通信长时间地被错误保持,提高语音通信的可靠性。The invention provides a method for voice communication in a mobile ad-hoc network. The method comprises the following steps: each communication node maintains a local database, and the historical call records of the node are preserved in the database, and each record is <communication ID , the two-tuple of IP address>; when initiating a voice call, the source node first accesses the local database to find the historical record of the target node address, if it finds the historical record of the target node address, it sends a unicast to the recorded target node address Query the message to confirm the validity of the address. If the source node receives a reply message within the specified time indicating that the address is true and valid, then establish a communication connection based on this address; otherwise, send a broadcast query message to obtain the current address of the target node; in the above The unicast and broadcast query messages contain the random number generated by the source node for this voice call. The random number is encrypted with the public key of the target node. Only the target node can correctly decrypt the random number. The source node can identify the The authenticity of the reply message, and through a handshake process of sending query and reply messages between nodes, a random number is shared between the source node and the target node of this voice communication, which can be used as a communication process The encryption key and authentication basis in the communication; during the call process after the communication connection is established, the communication parties periodically send address notification messages to each other, and the address notification messages are encrypted using the random number negotiated in the handshake stage as the key, including the serial number Field and random number field, when the address of a node changes, the node will send the changed address to the other party in a timely manner through the address notification message, and the other party will cancel the original connection established on the old address after decrypting the message and switch to the new address In addition, when one party does not receive a new and correct address notification message from the other party within the specified time, the current voice communication connection will be released to ensure that even if the addresses of both parties to the communication change at the same time, the communication The connection will also be released in time, so as to avoid voice communication from being wrongly maintained for a long time and improve the reliability of voice communication.

本发明的实现依赖于以下两个前提条件:The realization of the present invention relies on following two preconditions:

首先,因为在移动自组织网络中通信设备终端的IP地址是不固定的,所以不能采用IP地址来发起呼叫。取而代之的是给每个通信终端都设定一个通信ID,并利用这个通信ID来发起语音呼叫。通信ID是全局唯一(即对于不同的MANET网络内的节点也不重复),并且是恒定不变的。它能唯一地标志一个节点,并且必须方便用户的记忆。通信ID由一个集中的机构来发放。First of all, because the IP address of the communication device terminal is not fixed in the mobile ad hoc network, the IP address cannot be used to initiate a call. Instead, a communication ID is set for each communication terminal, and this communication ID is used to initiate a voice call. The communication ID is globally unique (that is, it is not repeated for nodes in different MANET networks), and is constant. It uniquely identifies a node and must be easy for the user to remember. Correspondence IDs are issued by a centralized agency.

其次,为了便于在节点之间实现相互认证,提高可靠性。规定每个节点都产生本节点的公钥和私钥信息,并且公开本节点的公钥。任何两个需要相互通信的节点都必须知道对方的公钥。Secondly, in order to facilitate mutual authentication between nodes and improve reliability. It is stipulated that each node generates the public key and private key information of the node, and discloses the public key of the node. Any two nodes that need to communicate with each other must know each other's public key.

本发明是一种移动自组织网络上的语音通信系统,其实现方法如下:The present invention is a kind of voice communication system on the mobile ad hoc network, and its realization method is as follows:

在MANET中,当一个节点想要对另一个节点发起呼叫时,它首先需要产生一个32位的随机数,并用目标节点的公钥进行加密。随机数的产生为以后通信过程中的认证和加密提供了保证。接着,源节点访问本地的名字服务模块,得到目标节点的IP地址。名字服务模块负责维护一个本地的数据库,数据库中包含了一系列的记录,每一条记录都含有一个通信ID和IP地址的对应。这些记录都是从本节点以前的通话历史中保存下来的。然而,这些历史记录并不一定能够确实反映目标节点当前使用的地址,因为有可能在上一次通话结束之后,目标节点的IP地址已经发生了变化。所以不能直接使用从名字服务模块返回的地址来建立语音通信连接,而是要在尝试建立连接之前通过一条单播查询消息对名字服务模块返回地址的准确性加以验证。如果本地数据库中没有关于目标节点的地址记录,名字服务模块返回空,那么就必须发送广播查询消息来得到目标节点的IP地址了。In MANET, when a node wants to initiate a call to another node, it first needs to generate a 32-bit random number and encrypt it with the public key of the target node. The generation of random numbers provides guarantee for the authentication and encryption in the communication process later. Next, the source node accesses the local name service module to obtain the IP address of the target node. The name service module is responsible for maintaining a local database, which contains a series of records, and each record contains a correspondence between a communication ID and an IP address. These records are all saved from the previous call history of this node. However, these historical records may not necessarily reflect the address currently used by the target node, because it is possible that the IP address of the target node has changed after the last call ended. Therefore, the address returned from the name service module cannot be directly used to establish a voice communication connection, but the accuracy of the address returned by the name service module must be verified through a unicast query message before attempting to establish a connection. If there is no address record about the target node in the local database and the name service module returns empty, then a broadcast query message must be sent to obtain the IP address of the target node.

语音呼叫源节点向名字服务模块返回的地址发送一个单播查询消息。格式如下。The voice call source node sends a unicast query message to the address returned by the name service module. The format is as follows.

  0        3                16                 310 3 16 31

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+  类型  +       保留      +        序列号     ++ Type + Reserved + Serial Number +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                    随机数(加密)              ++ random number (encryption) +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                     源地址                   ++ Source Address +

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                    目的地址                  ++ Destination Address +

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                   源端通信ID                 ++                              

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                   目的端通信ID               ++ Destination communication ID +

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

其中3位的类型字段表明消息的类型,单播查询消息的类型值为0。16位的序列号标记此次查询,因为一个节点可能发出过多个查询消息,所以需要一个字段来指示本次查询,源节点每发出一个查询请求后就把该字段的值递增1。随机数字段放置源节点为本次通话产生的加密“随机数”。源地址和目的地址字段分别标记查询消息源IP地址和目标IP地址。(IPv4地址32位,IPv6地址128位)两个通信ID字段分别记录源节点和目的节点的通信ID。The 3-bit type field indicates the type of the message, and the type value of the unicast query message is 0. The 16-bit serial number marks this query, because a node may have sent multiple query messages, so a field is needed to indicate this time Query, the value of this field is incremented by 1 each time the source node sends a query request. The random number field places the encrypted "random number" generated by the source node for this call. The source address and destination address fields mark the source IP address and destination IP address of the query message respectively. (IPv4 address 32 bits, IPv6 address 128 bits) Two communication ID fields respectively record the communication IDs of the source node and the destination node.

当此单播查询消息到达目的地址后,该节点检查单播查询消息中的“目的端通信ID”字段,并把它与本节点的通信ID进行对照,然后向通信源节点发送回复消息。格式如下。When the unicast query message reaches the destination address, the node checks the "destination communication ID" field in the unicast query message, compares it with the communication ID of the node, and then sends a reply message to the communication source node. The format is as follows.

  0           3               16               310 3 16 31

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+   类型  +         保留     +      序列号     ++ Type + Reserved + Serial Number +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                    随机数(加密)              ++ random number (encryption) +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                      源地址                  ++ Source Address +

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                     目的地址                 ++ Destination Address +

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

其中3位的类型字段表明消息的类型,单播查询回复消息的类型值为1。序列号标记查询,它是从相应的查询消息中拷贝过来的,表示回答了哪个查询请求。源地址和目的地址字段分别标记此回复消息的源IP地址和目标IP地址。如果本节点通信ID和单播查询消息中“目的端通信ID”字段的值相匹配,则使用本节点的私钥解密单播查询消息中的加密“随机数”得到随机数的明文,然后利用单播查询消息中指明的“源端通信ID”所对应节点的公钥值加密该随机数的明文,并把结果放在回复消息的加密 “随机数”字段。反之如果本节点通信ID和单播查询消息中“目的端通信ID”字段的值不匹配,则简单地用全“0”填充回复消息中的加密“随机数”字段。The 3-bit type field indicates the type of the message, and the type value of the unicast query reply message is 1. The sequence number marks the query, which is copied from the corresponding query message, indicating which query request was answered. The source address and destination address fields mark the source IP address and destination IP address of the reply message respectively. If the communication ID of this node matches the value of the "destination communication ID" field in the unicast query message, use the private key of the node to decrypt the encrypted "random number" in the unicast query message to obtain the plain text of the random number, and then use The public key value of the node corresponding to the "source communication ID" specified in the unicast query message encrypts the plaintext of the random number, and puts the result in the encrypted "random number" field of the reply message. Conversely, if the communication ID of the local node does not match the value of the "destination communication ID" field in the unicast query message, simply fill the encrypted "random number" field in the reply message with all "0".

如果源节点在规定的时间内收到了回复消息(单播查询回复消息的类型值为1),它用自己的私钥解密回复消息中的加密“随机数”得到随机数的明文,如果这个明文和源节点为本次通话产生的随机数相同,则完成了对目的节点的认证,握手结束。此时就可以用单播查询消息中指明的目的地址建立呼叫连接了。如果源节点在规定的时间内没有收到回复消息,或者是用私钥解密回复消息中的加密“随机数”字段得到的随机数明文与源节点为本次通话产生的随机数不同,则证明当初从本地数据库中得到的目标节点的地址信息已经失效了,语音通信的源节点就必须通过发送广播查询消息来得到相应的地址信息了。If the source node receives the reply message within the specified time (the type value of the unicast query reply message is 1), it uses its own private key to decrypt the encrypted "random number" in the reply message to obtain the plaintext of the random number, if the plaintext If it is the same as the random number generated by the source node for this call, the authentication of the destination node is completed, and the handshake ends. At this point, the call connection can be established with the destination address specified in the unicast query message. If the source node does not receive the reply message within the specified time, or the random number plaintext obtained by decrypting the encrypted "random number" field in the reply message with the private key is different from the random number generated by the source node for this call, then prove The address information of the target node originally obtained from the local database has become invalid, and the source node of the voice communication must obtain the corresponding address information by sending a broadcast query message.

广播查询消息的格式与单播查询消息完全相同。只是在广播查询消息中目的地址字段填充的是广播地址,它发送给MANET中的每一个节点。此外对于广播查询消息,其类型值为2。(单播查询消息的类型值为0)The format of the broadcast query message is exactly the same as that of the unicast query message. Only the broadcast address is filled in the destination address field in the broadcast query message, and it is sent to every node in the MANET. In addition, for the broadcast query message, its type value is 2. (The type value of the unicast query message is 0)

MANET网络中的每一个节点接收到广播查询消息后,检查自己的通信ID是否和此查询消息中“目的端通信ID”字段的值相同,如果相同则表明自己就是语音呼叫的目标节点,它就必须发送一条回复消息告知自己当前使用的IP地址。After receiving the broadcast query message, each node in the MANET network checks whether its own communication ID is the same as the value of the "destination communication ID" field in the query message. If they are the same, it indicates that it is the target node of the voice call, and it will You must send a reply message telling yourself which IP address you are currently using.

广播查询回复消息的格式与单播查询回复消息完全相同。其中3位的类型字段表明消息的类型,广播查询回复消息的类型值为3。序列号标记查询,它是从相应的广播查询消息中拷贝过来的,表示回答了哪个查询请求。源地址和目的地址字段分别标记此回复消息的源IP地址和目标IP地址。最后使用本节点的私钥解密广播查询消息中的加密“随机数”得到随机数的明文,然后利用广播查询消息中指明的“源端通信ID”所对应节点的公钥值加密随机数的明文,并把加密后的密文放在回复消息的加密“随机数”字段。The format of the broadcast query reply message is exactly the same as that of the unicast query reply message. The 3-bit type field indicates the type of the message, and the type value of the broadcast query reply message is 3. The sequence number marks the query, which is copied from the corresponding broadcast query message, indicating which query request was answered. The source address and destination address fields mark the source IP address and destination IP address of the reply message respectively. Finally, use the private key of this node to decrypt the encrypted "random number" in the broadcast query message to obtain the plaintext of the random number, and then use the public key value of the node corresponding to the "source communication ID" specified in the broadcast query message to encrypt the plaintext of the random number , and put the encrypted ciphertext in the encrypted "random number" field of the reply message.

查询节点接收到回复消息后,用自己的私钥解密回复消息的加密“随机数”,得到随机数的明文,然后同自己原先产生的随机数进行比较,如果两者相同,则说明此回复消息确实是从语音通信的目标节点发来的,因为只有这个节点才能正确解密查询消息中的加密“随机数”。这样,语音通信的源节点就得到了目标节点当前的IP地址(在回复消息的源地址字段指明),它就用这个地址信息来更新本地数据库,然后在此地址上建立呼叫连接。如果随机数比较的结果不相同,则丢弃此回复消息。如果查询节点没有在规定的时间内接收到正确的回复消息,它就认为语音呼叫的目标节点当前不在线,语音通话过程结束。After receiving the reply message, the query node decrypts the encrypted "random number" of the reply message with its own private key to obtain the plaintext of the random number, and then compares it with the random number generated by itself. If the two are the same, it means the reply message Indeed, it was sent from the destination node of the voice communication, because only this node can correctly decrypt the encrypted "random number" in the query message. Like this, the source node of voice communication has just obtained the current IP address of the target node (indicated in the source address field of the reply message), and it just uses this address information to update the local database, and then establishes a call connection on this address. If the result of the random number comparison is not the same, the reply message is discarded. If the query node does not receive a correct reply message within the prescribed time, it will consider that the target node of the voice call is not online at present, and the voice call process ends.

当通信双方得到彼此的IP地址建立呼叫连接后,就进入了语音通话状态。在通话过程中,通信双方的地址仍然有可能因为种种原因而改变。所以必须采用某种机制使得节点在地址变更的时候,语音通信不会被错误地保持。我们要求通信双方在收发语音数据包的同时,还周期性地发送指示当前地址信息的控制数据包。格式如下。When the communication parties obtain each other's IP addresses and establish a call connection, they enter the voice call state. During the call, the addresses of the two communicating parties may still change due to various reasons. Therefore, some mechanism must be adopted so that the voice communication will not be wrongly maintained when the address of the node is changed. We require the communication parties to periodically send control data packets indicating the current address information while sending and receiving voice data packets. The format is as follows.

  0           3                16              310 3 16 31

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+     类型  +                    保留          ++ Type + + Reserved +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                  序列号(加密)                ++ Serial Number (encrypted) +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                                              ++ + +

+                 当前地址(加密)               ++ Current address (encrypted) +

+                                              ++ + +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

+                随机数(加密)                  ++ random number (encryption) +

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

其中3位的类型字段表明消息的类型,地址通知消息的类型值为4。32位的序列号用来抵抗重放攻击和乱序到达。当前地址字段用来指明节点当前所使用的IPv4/IPv6地址。随机数字段记录在通信连接建立之前的握手过程中产生的随机数,它起到了一个认证的作用。后3个字段的内容在实际传输过程中是以密文的形式传送的。The 3-bit type field indicates the type of the message, and the type value of the address notification message is 4. The 32-bit serial number is used to resist replay attacks and out-of-order arrival. The current address field is used to indicate the IPv4/IPv6 address currently used by the node. The random number field records the random number generated during the handshake process before the communication connection is established, and it plays a role of authentication. The contents of the last three fields are transmitted in the form of ciphertext during actual transmission.

当语音通信的一方收到另一方传来的密文形式的地址通知消息后,它首先解密此消息,检查随机数字段是不是握手时产生的随机数。如果不是,则丢弃此消息;如果是,说明此消息确实是从通信的另一方传来的,因为只有参与本次语音通信的双方才知道此随机数。接下来,检查消息序列号以判断此消息是不是新的,如果不是,丢弃此消息;如果是,则检查“当前地址”字段的值是不是正在使用的IP地址,如果不是,说明通信另一方的地址发生了改变,因此将释放原来在旧地址上建立的通信连接,转而在改变后的IP地址上建立新的语音通信连接。When one party in the voice communication receives the address notification message in cipher text form from the other party, it first decrypts the message to check whether the random number field is the random number generated during the handshake. If not, the message is discarded; if it is, it means that the message is indeed sent from the other party of the communication, because only the two parties involved in the voice communication know the random number. Next, check the message sequence number to determine whether the message is new, if not, discard the message; if yes, check whether the value of the "current address" field is the IP address in use, if not, indicate the other party to the communication The address of the IP address has changed, so the original communication connection established on the old address will be released, and a new voice communication connection will be established on the changed IP address instead.

我们规定通信双方周期性地发送上述地址通知消息,每发送一个消息就把序列号加1。当通信终端在规定的时间内没有收到任何从另一方发来的新的正确的地址通知消息时,它就会释放现有的语音通信连接。We stipulate that the communication parties periodically send the above address notification messages, and the serial number is incremented by 1 every time a message is sent. When the communication terminal does not receive any new correct address notification message from the other party within the specified time, it will release the existing voice communication connection.

综上所述,本发明移动自组织网络上语音通信(VoIP)的实现方法的总体步骤如下:In summary, the overall steps of the implementation method of voice communication (VoIP) on the mobile ad hoc network of the present invention are as follows:

步骤S1:语音通信的源节点产生一个32位的随机数,并使用本次语音通信目标节点的公钥进行加密;Step S1: The source node of the voice communication generates a 32-bit random number, and encrypts it with the public key of the target node of the voice communication;

步骤S2:源节点访问名字服务模块,名字服务模块查询本地数据库,如果找到相应记录,就返回目标节点IP地址,进入S3,如果没有找到相应记录,进入S9;Step S2: The source node accesses the name service module, and the name service module queries the local database. If the corresponding record is found, it returns the IP address of the target node and enters S3. If no corresponding record is found, enters S9;

步骤S3:源节点向名字服务模块返回的IP地址发送一个单播查询消息,以确认此地址的有效性,同时启动定时器;单播查询消息中包含了S1产生的加密随机数;Step S3: The source node sends a unicast query message to the IP address returned by the name service module to confirm the validity of the address and start the timer at the same time; the unicast query message contains the encrypted random number generated by S1;

步骤S4:单播查询到达目的地址后,相应节点对照本节点的通信ID(Identifier)和查询消息中的“目的端通信ID”字段,如果相同,进入S5;否则,进入S6;Step S4: After the unicast query reaches the destination address, the corresponding node compares the communication ID (Identifier) of the node with the "destination communication ID" field in the query message. If they are the same, go to S5; otherwise, go to S6;

步骤S5:该节点用自己的私钥解密单播查询消息中的加密随机数得到随机数的明文,然后利用单播查询消息中指明的“源端通信ID”所对应节点的公钥值加密该随机数的明文,并把结果放在单播查询回复消息中,进入S7;Step S5: The node decrypts the encrypted random number in the unicast query message with its own private key to obtain the plaintext of the random number, and then encrypts the random number with the public key value of the node corresponding to the "source communication ID" specified in the unicast query message. The plaintext of the random number, and put the result in the unicast query reply message, and enter S7;

步骤S6:该节点用全“0”填充单播查询回复消息中加密的“随机数”字段;Step S6: The node fills the encrypted "random number" field in the unicast query reply message with all "0"s;

步骤S7:该节点向语音呼叫的源节点发送一个单播查询回复消息;Step S7: the node sends a unicast query reply message to the source node of the voice call;

步骤S8:如果源节点在规定时间内收到了单播查询回复消息,它用本节点的私钥解密回复消息中的加密随机数,并同在S1产生的随机数进行比较,如果比较的结果相同,则把名字服务模块返回的IP地址作为语音呼叫的目的地址,转入S13;如果比较的结果不同,丢弃此回复消息,进入S9;如果源节点在规定时间内没有收到单播查询回复消息,进入S9;Step S8: If the source node receives the unicast query reply message within the specified time, it uses the private key of this node to decrypt the encrypted random number in the reply message, and compares it with the random number generated in S1, if the result of the comparison is the same , then use the IP address returned by the name service module as the destination address of the voice call, and transfer to S13; if the comparison results are different, discard the reply message and enter S9; if the source node does not receive the unicast query reply message within the specified time , enter S9;

步骤S9:源节点向移动自组织网络(Mobile Ad Hoc Network-MANET)内发送一个广播查询消息,同时启动定时器,广播查询消息中包含了在S1产生的加密随机数;Step S9: the source node sends a broadcast query message to the Mobile Ad Hoc Network-MANET, and starts the timer at the same time, and the broadcast query message contains the encrypted random number generated in S1;

步骤S10:MANET中的每一个节点收到广播查询消息后,检查自己的通信ID,如果自己正是呼叫的目的节点,则用自己的私钥解密广播查询消息中的加密随机数得到随机数的明文,然后利用广播查询消息中指明的“源端通信ID”所对应节点的公钥值加密该随机数的明文,并把结果放在广播查询回复消息中,然后向语音呼叫的源节点发送广播查询回复消息;Step S10: After receiving the broadcast query message, each node in the MANET checks its own communication ID. If it is the destination node of the call, it decrypts the encrypted random number in the broadcast query message with its own private key to obtain the random number. Then use the public key value of the node corresponding to the "source communication ID" specified in the broadcast query message to encrypt the plaintext of the random number, put the result in the broadcast query reply message, and then send a broadcast to the source node of the voice call Query reply message;

步骤S11:源节点侦听端口,如果在定时器超时前收到了广播查询回复消息,它用本节点的私钥解密回复消息中的加密随机数,并同在S1产生的随机数进行比较,如果比较的结果相同,则用回复消息的源地址更新本地数据库,并把此地址作为语音呼叫的目的地址,转入S13;如果比较的结果不同,丢弃此回复消息,继续侦听;如果定时器超时,进入S12;Step S11: The source node listens to the port. If it receives a broadcast query reply message before the timer expires, it uses its private key to decrypt the encrypted random number in the reply message, and compares it with the random number generated in S1. If If the comparison results are the same, update the local database with the source address of the reply message, and use this address as the destination address of the voice call, and transfer to S13; if the comparison results are different, discard the reply message and continue to listen; if the timer expires , enter S12;

步骤S12:源节点认为本次语音呼叫的目标节点当前不在线,通话过程以“不在线”错误类型结束;Step S12: The source node thinks that the target node of this voice call is not online, and the call process ends with an error type of "not online";

步骤S13:源节点在S8或者S11得到目标节点当前使用的准确IP地址后,在此地址上和目标节点建立语音通信连接;Step S13: After the source node obtains the accurate IP address currently used by the target node in S8 or S11, establish a voice communication connection with the target node on this address;

步骤S14:通信连接建立进入通话状态后,每一方需要周期性地向另一方发送加密的地址通知消息,以告知本方当前使用的地址信息;Step S14: After the communication connection is established and enters the call state, each party needs to periodically send an encrypted address notification message to the other party to inform the party of the current address information;

步骤S15:当一方收到另一方传来的地址通知消息后,它首先解密此消息,检查随机数字段是不是连接建立时共享的随机数;如果不是,则丢弃此消息,如果是,说明此消息确实是从通信的另一方传来的;然后仅在检查成功后才检查消息序列号以判断此消息是不是新的,如果不是,丢弃此消息,如果是,则检查“当前地址”字段的值是不是正在使用的目的IP地址,如果不是,说明通信另一方的地址发生了改变,因此将释放原来在旧地址上建立的通信连接,转而在改变后的IP地址上建立新的语音通信连接;Step S15: When one party receives the address notification message from the other party, it first decrypts the message, and checks whether the random number field is the random number shared when the connection is established; if not, discard the message; The message does come from the other side of the communication; then only if the check is successful then check the message sequence number to see if the message is new, if not discard the message, if so check the "Current Address" field's Is the value the destination IP address being used? If not, it means that the address of the other party has changed, so the communication connection established on the old address will be released, and a new voice communication will be established on the changed IP address. connect;

步骤S16:当通信一方在规定的时间内(一般为3-10个地址通知消息的发送周期)没有收到任何从另一方发来的新的正确的地址通知消息时,它就会释放现有的语音通信连接。Step S16: When one party to the communication does not receive any new correct address notification message sent from the other party within the specified time (generally 3-10 address notification message sending cycle), it will release the existing address notification message. voice communication connection.

实现细节:Implementation details:

1.在握手阶段采用非对称加密算法RSA,同时为了减少大素数的生成时间1. The asymmetric encryption algorithm RSA is used in the handshake phase, and in order to reduce the generation time of large prime numbers

只采用8位长度的密钥。Only 8-bit keys are used.

2.当一个节点发出单播或者多播查询消息,如果在2秒钟之内没有收到应答,就启动相应的超时操作。这个时间值的设定和网络规模、节点处理速度等因素密切相关。2. When a node sends a unicast or multicast query message, if it does not receive a response within 2 seconds, it starts the corresponding timeout operation. The setting of this time value is closely related to factors such as network scale and node processing speed.

一般情况可按如下公式计算:In general, it can be calculated according to the following formula:

WAIT_TIME=4*NODE_PROCESS_TIME*NET_DIAMETERWAIT_TIME=4 * NODE_PROCESS_TIME * NET_DIAMETER

WAIT_TIME:等待时间。WAIT_TIME: Waiting time.

NODE_PROCESS_TIME:节点处理时间,是节点处理报文和转发报文的时间总和,一般为40ms。NODE_PROCESS_TIME: Node processing time, which is the sum of the time for the node to process and forward the message, generally 40ms.

NET_DIAMETER:MANET中两个结点间的最大跳数,与网络规模有关。NET_DIAMETER: The maximum number of hops between two nodes in MANET, which is related to the network scale.

3.在通信过程中,VoIP通信节点每隔5秒钟就向对方发送一个地址通知消息。从加解密效率因素考虑,采用对称加密算法RC4来加密地址通知消息,而RC4算法所使用的密钥就是在握手阶段产生的随机数。3. During the communication process, the VoIP communication node sends an address notification message to the other party every 5 seconds. Considering the efficiency of encryption and decryption, the symmetric encryption algorithm RC4 is used to encrypt the address notification message, and the key used by the RC4 algorithm is the random number generated during the handshake phase.

4.规定当通信的一方在30秒的时间内没有收到从另一方发来的新的正确的地址通知消息时,它就切断当前的语音通信连接。4. It is stipulated that when one party of the communication does not receive a new correct address notification message from the other party within 30 seconds, it will cut off the current voice communication connection.

比较本发明与传统的VoIP处理机制,我们显然可以看出本发明具有以下优点:Comparing the present invention with the traditional VoIP processing mechanism, we can find out that the present invention has the following advantages obviously:

1.在语音通信连接建立之前,通过一个握手的过程在通信双方之间共享了一个随机数。因为随机数全部是以密文的方式发送的,所以MANET内的其它节点都不知道此随机数,这个随机数就可以作为语音通信的双方相互认证的依据。1. Before the voice communication connection is established, a random number is shared between the communication parties through a handshake process. Because the random numbers are all sent in the form of ciphertext, other nodes in the MANET do not know the random numbers, and the random numbers can be used as the basis for the mutual authentication of the two parties in the voice communication.

2.我们并没有直接使用从本地数据库中返回的'地址来建立通信连接,而是试图在使用它之前通过一个单播查询确认它的有效性,以此来提高语音通信的可靠性。2. We did not directly use the 'address returned from the local database to establish a communication connection, but tried to confirm its validity through a unicast query before using it, so as to improve the reliability of voice communication.

3.利用本地数据库中保存的地址信息发送单播查询来代替每次通过广播方式获得目标节点的IP地址,可以减少移动自组网的广播风暴,节省带宽资源。3. Using the address information stored in the local database to send unicast queries instead of obtaining the IP address of the target node through broadcasting each time can reduce the broadcast storm of the mobile ad hoc network and save bandwidth resources.

4.在通信过程中,当一个节点的地址发生了改变,它会及时地通过地址通知消息将改变后的新地址告诉通信的另一方。另一方解密此地址通知消息后,就可以取消原先在旧地址上建立的通信连接,转而在新地址上建立新的语音通信连接,从而使得语音通信过程能够自动切换到新地址上。因为地址通知消息中包含了随机数字段,而这个随机数又仅仅为语音通信的双方所共享,所以当一方解密得到地址通知消息的明文后,如果看到了一个正确的随机数的值,就可以断定此地址通知消息确实是从通信的另一方发来的,地址通知消息中的随机数字段起到了一个认证的作用。而在地址通知消息中增加了序列号的字段后,既可以抵抗重放攻击,又可以解决在分组网络中地址通知消息乱序到达的问题,即如果本次解密后地址通知消息的序列号值小于或者等于前一次正确收到的地址通知消息的序列号值,则证明此地址通知消息是一个旧消息,可以简单地丢弃。4. During the communication process, when the address of a node changes, it will promptly notify the other party of the new address through the address notification message. After the other party decrypts the address notification message, it can cancel the original communication connection established on the old address, and instead establish a new voice communication connection on the new address, so that the voice communication process can be automatically switched to the new address. Because the address notification message contains a random number field, and this random number is only shared by the two parties in the voice communication, so when one party decrypts the plaintext of the address notification message, if it sees a correct value of the random number, it can It is determined that the address notification message is indeed sent from the other party of the communication, and the random number field in the address notification message plays an authentication role. After adding the sequence number field in the address notification message, it can not only resist the replay attack, but also solve the problem of the out-of-order arrival of the address notification message in the packet network, that is, if the sequence number value of the address notification message after this decryption If it is less than or equal to the sequence number value of the previous correctly received address notification message, it proves that this address notification message is an old message and can be simply discarded.

5.在通信过程中,如果通信双方的地址依次发生改变一次或者多次,语音通信连接依照上述的方法仍然可以正确地保持。5. During the communication process, if the addresses of the communicating parties change one or more times in turn, the voice communication connection can still be maintained correctly according to the above method.

6.在通信过程中,如果在某一个时刻通信双方的地址同时发生了改变,虽然两方发送的地址通知消息都无法到达对方,但因为我们规定当通信一方在规定的时间(30秒)内没有收到任何从另一方发来的新的正确的地址通知消息时,它就会释放现有的语音通信连接,所以经过一段时间后,每一方也会因为收不到来自对方的正确的地址通知消息而释放连接,从而使得语音通信不会被长时间地错误保持,提高了可靠性。6. During the communication process, if the addresses of both parties to the communication change at the same time at a certain moment, although the address notification messages sent by both parties cannot reach the other party, because we stipulate that when one party communicates within the specified time (30 seconds) When it does not receive any new correct address notification message from the other party, it will release the existing voice communication connection, so after a period of time, each party will not receive the correct address from the other party. The connection is released by notifying the message, so that the voice communication will not be wrongly held for a long time, and the reliability is improved.

附图说明 Description of drawings

图1是语音呼叫源节点建立呼叫连接前的处理流程图。FIG. 1 is a flow chart of processing before a voice call source node establishes a call connection.

图2是通话过程中通信节点处理收到的地址通知消息的流程图。Fig. 2 is a flow chart of the communication node processing the received address notification message during the call.

具体实施方式 Detailed ways

图1中各事件的处理步骤如下:The processing steps of each event in Figure 1 are as follows:

步骤S1.1:语音呼叫的源节点产生一个32位的随机数,并使用本次语音通信目标节点的公钥进行加密;Step S1.1: The source node of the voice call generates a 32-bit random number, and encrypts it with the public key of the target node of the voice communication;

步骤S1.2:源节点访问名字服务模块,名字服务模块查询本地数据库;Step S1.2: The source node accesses the name service module, and the name service module queries the local database;

步骤S1.3:如果在本地数据库中找到相应记录,就返回目标节点IP地址,进入S1.4,如果没有找到相应记录,进入S1.10;Step S1.3: If the corresponding record is found in the local database, return the IP address of the target node and go to S1.4, if no corresponding record is found, go to S1.10;

步骤S1.4:源节点向名字服务模块返回的IP地址发送一个单播查询消息,以确认此地址的有效性,同时启动定时器,单播查询消息中包含了S1.1产生的加密随机数;Step S1.4: The source node sends a unicast query message to the IP address returned by the name service module to confirm the validity of the address and start the timer at the same time. The unicast query message contains the encrypted random number generated by S1.1 ;

步骤S1.5:如果源节点在规定时间内收到了回复消息,进入S1.6;否则,进入S1.10;Step S1.5: If the source node receives the reply message within the specified time, go to S1.6; otherwise, go to S1.10;

步骤S1.6:源节点用本节点的私钥解密回复消息中的加密随机数;Step S1.6: The source node decrypts the encrypted random number in the reply message with its private key;

步骤S1.7:将解密后的随机数与本节点在S1.1产生的随机数进行比较,如果比较的结果相同,进入S1.8;如果比较的结果不同,进入S1.9;Step S1.7: Compare the decrypted random number with the random number generated by the node in S1.1, if the comparison result is the same, go to S1.8; if the comparison result is different, go to S1.9;

步骤S1.8:把名字服务模块返回的IP地址作为语音呼叫的目标地址;进入S1.18;Step S1.8: use the IP address returned by the name service module as the target address of the voice call; enter S1.18;

步骤S1.9:丢弃回复消息;Step S1.9: Discard the reply message;

步骤S1.10:源节点向MANET网络内发送一个广播查询消息,同时启动定时器,广播查询消息中包含了在S1.1产生的加密随机数;Step S1.10: The source node sends a broadcast query message to the MANET network and starts a timer at the same time. The broadcast query message contains the encrypted random number generated in S1.1;

步骤S1.11:源节点侦听端口,如果在定时器超时前有广播查询回复消息到来,进入S1.13;如果定时器超时,进入S1.12;Step S1.11: The source node listens to the port. If there is a broadcast query reply message before the timer expires, enter S1.13; if the timer expires, enter S1.12;

步骤S1.12:目标节点不在线,语音通话过程结束;Step S1.12: The target node is offline, and the voice call process ends;

步骤S1.13:源节点用本节点的私钥解密回复消息中的加密随机数;Step S1.13: The source node decrypts the encrypted random number in the reply message with its private key;

步骤S1.14:将解密后的随机数与本节点在S1.1产生的随机数进行比较,如果比较的结果相同,进入S1.16;如果比较的结果不同,进入S1.15;Step S1.14: Compare the decrypted random number with the random number generated by the node in S1.1, if the comparison result is the same, go to S1.16; if the comparison result is different, go to S1.15;

步骤S1.15:丢弃回复消息,重新回到S1.11;Step S1.15: Discard the reply message and return to S1.11;

步骤S1.16:利用回复消息的源IP地址更新本地数据库;Step S1.16: Utilize the source IP address of the reply message to update the local database;

步骤S1.17:把该回复消息的源IP地址作为语音呼叫的目标地址;Step S1.17: use the source IP address of the reply message as the target address of the voice call;

步骤S1.18:根据S1.8或者S1.17得到的目标地址建立语音通话连接。Step S1.18: Establish a voice call connection according to the target address obtained in S1.8 or S1.17.

图2中各事件处理步骤如下:The processing steps of each event in Figure 2 are as follows:

步骤S2.1:通信节点收到地址通知消息;Step S2.1: The communication node receives the address notification message;

步骤S2.2:通信节点用连接建立阶段协商好的随机数作为密钥解密此地址通知消息;Step S2.2: The communication node uses the random number negotiated in the connection establishment phase as a key to decrypt the address notification message;

步骤S2.3:检查随机数字段的值,如果与在连接建立阶段通信双方共享的随机数相同,进入S2.4,否则,进入S2.7;Step S2.3: Check the value of the random number field, if it is the same as the random number shared by both communication parties in the connection establishment phase, go to S2.4, otherwise, go to S2.7;

步骤S2.4:检查序列号字段,如果是新消息(该值大于前一次正确收到的地址通知消息的序列号),则将该序列号值记录下来,以替代前一次正确收到的地址通知消息的序列号值,进入S2.5,否则,进入S2.7;Step S2.4: Check the serial number field, if it is a new message (this value is greater than the serial number of the address notification message received correctly last time), record the serial number value to replace the address received correctly last time Notify the serial number value of the message, enter S2.5, otherwise, enter S2.7;

步骤S2.5:检查当前地址字段,如果发现通信另一方的IP地址发生了变化,进入S2.6,否则,进入S2.7;Step S2.5: Check the current address field, if it is found that the IP address of the other party has changed, go to S2.6, otherwise, go to S2.7;

步骤S2.6:切断在旧地址上的语音通信连接,转而在改变后的IP地址上建立新的语音通信连接,结束本流程;Step S2.6: cut off the voice communication connection on the old address, and then establish a new voice communication connection on the changed IP address, and end this process;

步骤S2.7:丢弃消息。Step S2.7: Discard the message.

Claims (4)

1.一种在移动自组织网络中语音通信方法,其特征在于,该方法包括以下步骤:每个通信节点维护一个本地数据库,数据库中保存着本节点的历史通话记录,每一条记录都是<通信ID,IP地址>的二元组;1. A voice communication method in a mobile ad-hoc network, characterized in that the method comprises the following steps: each communication node maintains a local database, and the historical call record of this node is preserved in the database, and each record is < Two-tuple of communication ID, IP address>; 在发起语音呼叫时,源节点首先访问本地数据库查找目标节点地址的历史记录,如果找到了目标节点地址的历史记录,则向该记录中的目标节点地址发送单播查询消息以确认地址的有效性,如果源节点在规定时间内收到回复消息说明该地址真实有效,则根据此地址建立通信连接;否则,发送广播查询消息来得到目标节点的当前地址;在上述单播和广播查询消息中包含了源节点为本次语音通话产生的随机数,该随机数用目标节点的公钥进行了加密,只有目标节点才能正确解密随机数,源节点通过此随机数辨别回复消息的真实性,同时经过在节点之间发送查询和回复消息这么一个握手过程,在本次语音通信的源节点和目标节点之间共享了一个随机数,该随机数用于通信过程中的加密密钥和认证依据;When initiating a voice call, the source node first accesses the local database to find the historical record of the target node address. If the historical record of the target node address is found, it sends a unicast query message to the target node address in the record to confirm the validity of the address , if the source node receives a reply message within the specified time indicating that the address is true and valid, then establish a communication connection based on this address; otherwise, send a broadcast query message to obtain the current address of the target node; the above unicast and broadcast query messages include The random number generated by the source node for this voice call is encrypted with the public key of the target node. Only the target node can correctly decrypt the random number. The source node can use this random number to identify the authenticity of the reply message. In the handshake process of sending query and reply messages between nodes, a random number is shared between the source node and the target node of this voice communication, which is used for the encryption key and authentication basis in the communication process; 在通信连接建立后的通话过程中,通信双方周期性地互发地址通知消息,地址通知消息使用握手阶段协商好的随机数作为密钥进行加密,包含序列号字段和随机数字段,当一个节点的地址发生变化,节点就通过地址通知消息及时地将变化后的地址发给对方,另一方解密消息后取消原先在旧地址上建立的连接转而在新地址上建立语音通信连接;During the call process after the communication connection is established, the communication parties periodically send address notification messages to each other. The address notification messages are encrypted using the random number negotiated in the handshake phase as the key, including the sequence number field and the random number field. When a node If the address of the node changes, the node will send the changed address to the other party in a timely manner through the address notification message, and the other party will cancel the connection established on the old address after decrypting the message and establish a voice communication connection on the new address; 此外,当一方在规定的时间内没有收到另一方发来的新的正确的地址通知消息时将释放当前的语音通信连接,保证即使通信双方的地址同时发生改变,通信连接也会被及时释放,避免语音通信长时间地被错误保持,提高语音通信的可靠性。In addition, when one party does not receive a new and correct address notification message from the other party within the specified time, the current voice communication connection will be released to ensure that even if the addresses of both communication parties change at the same time, the communication connection will be released in time , to avoid voice communication being wrongly maintained for a long time, and improve the reliability of voice communication. 2.根据权利要求1所述的在移动自组织网络中语音通信方法,其特征在于,所述语音呼叫源节点发起语音呼叫,建立通信连接的步骤包括:2. the voice communication method in the mobile ad hoc network according to claim 1, wherein the voice call source node initiates a voice call, and the step of establishing a communication connection comprises: 步骤S1.1:语音呼叫的源节点产生一个32位的随机数,并使用本次语音通信目标节点的公钥进行加密;Step S1.1: The source node of the voice call generates a 32-bit random number, and encrypts it with the public key of the target node of the voice communication; 步骤S1.2:源节点访问名字服务模块,名字服务模块查询本地数据库;Step S1.2: The source node accesses the name service module, and the name service module queries the local database; 步骤S1.3:如果在本地数据库中找到相应记录,就返回目标节点IP地址,进入S1.4,如果没有找到相应记录,进入S1.10;Step S1.3: If the corresponding record is found in the local database, return the IP address of the target node and go to S1.4, if no corresponding record is found, go to S1.10; 步骤S1.4:源节点向名字服务模块返回的IP地址发送一个单播查询消息,以确认此地址的有效性,同时启动定时器,单播查询消息中包含了S1.1产生的加密随机数;Step S1.4: The source node sends a unicast query message to the IP address returned by the name service module to confirm the validity of the address and start the timer at the same time. The unicast query message contains the encrypted random number generated by S1.1 ; 步骤S1.5:如果源节点在规定时间内收到了回复消息,进入S1.6;否则,进入S1.10;Step S1.5: If the source node receives the reply message within the specified time, go to S1.6; otherwise, go to S1.10; 步骤S1.6:源节点用本节点的私钥解密回复消息中的加密随机数;Step S1.6: The source node decrypts the encrypted random number in the reply message with its private key; 步骤S1.7:将解密后的随机数与本节点在S1.1产生的随机数进行比较,如果比较的结果相同,进入S1.8;如果比较的结果不同,进入S1.9;Step S1.7: Compare the decrypted random number with the random number generated by the node in S1.1, if the comparison result is the same, go to S1.8; if the comparison result is different, go to S1.9; 步骤S1.8:把名字服务模块返回的IP地址作为语音呼叫的目标地址;进入S1.18;Step S1.8: use the IP address returned by the name service module as the target address of the voice call; enter S1.18; 步骤S1.9:丢弃回复消息;Step S1.9: Discard the reply message; 步骤S1.10:源节点向MANET网络内发送一个广播查询消息,同时启动定时器,广播查询消息中包含了在S1.1产生的加密随机数;Step S1.10: The source node sends a broadcast query message to the MANET network and starts a timer at the same time. The broadcast query message contains the encrypted random number generated in S1.1; 步骤S1.11:源节点侦听端口,如果在定时器超时前有广播查询回复消息到来,进入S1.13;如果定时器超时,进入S1.12;Step S1.11: The source node listens to the port. If there is a broadcast query reply message before the timer expires, enter S1.13; if the timer expires, enter S1.12; 步骤S1.12:目标节点不在线,语音通话过程结束;Step S1.12: The target node is offline, and the voice call process ends; 步骤S1.13:源节点用本节点的私钥解密回复消息中的加密随机数;Step S1.13: The source node decrypts the encrypted random number in the reply message with its private key; 步骤S1.14:将解密后的随机数与本节点在S1.1产生的随机数进行比较,如果比较的结果相同,进入S1.16;如果比较的结果不同,进入S1.15;Step S1.14: Compare the decrypted random number with the random number generated by the node in S1.1, if the comparison result is the same, go to S1.16; if the comparison result is different, go to S1.15; 步骤S1.15:丢弃回复消息,重新回到S1.11;Step S1.15: Discard the reply message and return to S1.11; 步骤S1.16:利用回复消息的源IP地址更新本地数据库;Step S1.16: Utilize the source IP address of the reply message to update the local database; 步骤S1.17:把该回复消息的源IP地址作为语音呼叫的目标地址;Step S1.17: use the source IP address of the reply message as the target address of the voice call; 步骤S1.18:根据S1.8或者S1.17得到的目标地址建立语音通话连接。Step S1.18: Establish a voice call connection according to the target address obtained in S1.8 or S1.17. 3.据权利要求1所述的在移动自组织网络中语音通信方法,其特征在于,所述通话过程中通信节点处理收到的地址通知消息的步骤包括:3. the voice communication method in the mobile ad-hoc network according to claim 1, wherein the step of communicating node processing the address notification message received during the call comprises: 步骤S2.1:通信节点收到地址通知消息;Step S2.1: The communication node receives the address notification message; 步骤S2.2:通信节点用连接建立阶段协商好的随机数作为密钥解密此地址通知消息;Step S2.2: The communication node uses the random number negotiated in the connection establishment phase as a key to decrypt the address notification message; 步骤S2.3:检查随机数字段的值,如果与在连接建立阶段通信双方共享的随机数相同,进入S2.4,否则,进入S2.7;Step S2.3: Check the value of the random number field, if it is the same as the random number shared by both communication parties in the connection establishment phase, go to S2.4, otherwise, go to S2.7; 步骤S2.4:检查序列号字段,如果是新消息,该值大于前一次正确收到的地址通知消息的序列号,则将该序列号值记录下来,以替代前一次正确收到的地址通知消息的序列号值,进入S2.5,否则,进入S2.7;Step S2.4: Check the serial number field. If it is a new message and the value is greater than the serial number of the address notification message received correctly last time, record the serial number value to replace the address notification message received correctly last time The serial number value of the message, enter S2.5, otherwise, enter S2.7; 步骤S2.5:检查当前地址字段,如果发现通信另一方的IP地址发生了变化,进入S2.6,否则,进入S2.7;Step S2.5: Check the current address field, if it is found that the IP address of the other party has changed, go to S2.6, otherwise, go to S2.7; 步骤S2.6:切断在旧地址上的语音通信连接,转而在改变后的IP地址上建立新的语音通信连接,结束本流程;Step S2.6: cut off the voice communication connection on the old address, and then establish a new voice communication connection on the changed IP address, and end this process; 步骤S2.7:丢弃消息。Step S2.7: Discard the message. 4.根据权利要求1所述的在移动自组织网络中语音通信方法,其特征在于,该方法具体包括:4. the voice communication method in the mobile ad hoc network according to claim 1, characterized in that the method specifically comprises: 步骤S1:语音通信的源节点产生一个32位的随机数,并使用本次语音通信目标节点的公钥进行加密;Step S1: The source node of the voice communication generates a 32-bit random number, and encrypts it with the public key of the target node of the voice communication; 步骤S2:源节点访问名字服务模块,名字服务模块查询本地数据库,如果找到相应记录,就返回目标节点IP地址,进入S3;如果没有找到相应记录,进入S9;Step S2: The source node accesses the name service module, and the name service module queries the local database. If the corresponding record is found, it returns the IP address of the target node and enters S3; if no corresponding record is found, enters S9; 步骤S3:源节点向名字服务模块返回的IP地址发送一个单播查询消息,以确认此地址的有效性,同时启动定时器;单播查询消息中包含了步骤S1产生的加密随机数;Step S3: The source node sends a unicast query message to the IP address returned by the name service module to confirm the validity of the address and start a timer at the same time; the unicast query message contains the encrypted random number generated in step S1; 步骤S4:单播查询到达目的地址后,相应节点对照本节点的通信ID和查询消息中的“目的端通信ID”字段,如果相同,进入S5;否则,进入S6;Step S4: After the unicast query reaches the destination address, the corresponding node compares the communication ID of the node with the "destination communication ID" field in the query message, and if they are the same, go to S5; otherwise, go to S6; 步骤S5:该节点用自己的私钥解密单播查询消息中的加密随机数得到随机数的明文,然后利用单播查询消息中指明的“源端通信ID”所对应节点的公钥值加密该随机数的明文,并把结果放在单播查询回复消息中,进入S7;Step S5: The node decrypts the encrypted random number in the unicast query message with its own private key to obtain the plaintext of the random number, and then encrypts the random number with the public key value of the node corresponding to the "source communication ID" specified in the unicast query message. The plaintext of the random number, and put the result in the unicast query reply message, and enter S7; 步骤S6:该节点用全“0”填充单播查询回复消息中加密的“随机数”字段;Step S6: The node fills the encrypted "random number" field in the unicast query reply message with all "0"s; 步骤S7:该节点向语音呼叫的源节点发送一个单播查询回复消息;Step S7: the node sends a unicast query reply message to the source node of the voice call; 步骤S8:如果源节点在规定时间内收到了单播查询回复消息,它用本节点的私钥解密回复消息中的加密随机数,并同在S1产生的随机数进行比较,如果比较的结果相同,则把名字服务模块返回的IP地址作为语音呼叫的目的地址,转入S13;如果比较的结果不同,丢弃此回复消息,进入S9;如果源节点在规定时间内没有收到单播查询回复消息,进入S9;Step S8: If the source node receives the unicast query reply message within the specified time, it uses the private key of this node to decrypt the encrypted random number in the reply message, and compares it with the random number generated in S1, if the result of the comparison is the same , then use the IP address returned by the name service module as the destination address of the voice call, and transfer to S13; if the comparison results are different, discard the reply message and enter S9; if the source node does not receive the unicast query reply message within the specified time , enter S9; 步骤S9:源节点向移动自组织网络MANET内发送一个广播查询消息,同时启动定时器,广播查询消息中包含了在S1产生的加密随机数;Step S9: the source node sends a broadcast query message to the mobile ad hoc network MANET, and starts a timer at the same time, the broadcast query message contains the encrypted random number generated in S1; 步骤S10:MANET中的每一个节点收到广播查询消息后,检查自己的通信ID,如果自己正是呼叫的目的节点,则用自己的私钥解密广播查询消息中的加密随机数得到随机数的明文,然后利用广播查询消息中指明的“源端通信ID”所对应节点的公钥值加密该随机数的明文,并把结果放在广播查询回复消息中,然后向语音呼叫的源节点发送广播查询回复消息;Step S10: After receiving the broadcast query message, each node in the MANET checks its own communication ID. If it is the destination node of the call, it decrypts the encrypted random number in the broadcast query message with its own private key to obtain the random number. Then use the public key value of the node corresponding to the "source communication ID" specified in the broadcast query message to encrypt the plaintext of the random number, put the result in the broadcast query reply message, and then send a broadcast to the source node of the voice call Query reply message; 步骤S11:源节点侦听端口,如果在定时器超时前收到了广播查询回复消息,它用本节点的私钥解密回复消息中的加密随机数,并同在S1产生的随机数进行比较,如果比较的结果相同,则用回复消息的源地址更新本地数据库,并把此地址作为语音呼叫的目的地址,转入S13;如果比较的结果不同,丢弃此回复消息,继续侦听;如果定时器超时,进入S12;Step S11: The source node listens to the port. If it receives a broadcast query reply message before the timer expires, it uses its private key to decrypt the encrypted random number in the reply message, and compares it with the random number generated in S1. If If the comparison results are the same, update the local database with the source address of the reply message, and use this address as the destination address of the voice call, and transfer to S13; if the comparison results are different, discard the reply message and continue to listen; if the timer expires , enter S12; 步骤S12:源节点认为本次语音呼叫的目标节点当前不在线,通话过程以“不在线”错误类型结束;Step S12: The source node thinks that the target node of this voice call is not online, and the call process ends with an error type of "not online"; 步骤S13:源节点在S8或者S11得到目标节点当前使用的准确IP地址后,在此地址上和目标节点建立语音通信连接;Step S13: After the source node obtains the accurate IP address currently used by the target node in S8 or S11, establish a voice communication connection with the target node on this address; 步骤S14:通信连接建立进入通话状态后,每一方需要周期性地向另一方发送加密的地址通知消息,以告知本方当前使用的地址信息;Step S14: After the communication connection is established and enters the call state, each party needs to periodically send an encrypted address notification message to the other party to inform the party of the current address information; 步骤S15:当一方收到另一方传来的地址通知消息后,它首先解密此消息,检查随机数字段是不是连接建立时共享的随机数;如果不是,则丢弃此消息,如果是,说明此消息确实是从通信的另一方传来的;然后仅在检查成功后才检查消息序列号以判断此消息是不是新的,如果不是,丢弃此消息,如果是,则检查“当前地址”字段的值是不是正在使用的目的IP地址,如果不是,说明通信另一方的地址发生了改变,因此将释放原来在旧地址上建立的通信连接,转而在改变后的IP地址上建立新的语音通信连接;Step S15: When one party receives the address notification message from the other party, it first decrypts the message, and checks whether the random number field is the random number shared when the connection is established; if not, discard the message; The message does come from the other side of the communication; then only if the check is successful then check the message sequence number to see if the message is new, if not discard the message, if so check the "Current Address" field's Is the value the destination IP address being used? If not, it means that the address of the other party has changed, so the communication connection established on the old address will be released, and a new voice communication will be established on the changed IP address. connect; 步骤S16:当通信一方在规定的时间内没有收到任何从另一方发来的新的正确的地址通知消息时,则释放现有的语音通信连接。Step S16: When the communication party does not receive any new correct address notification message from the other party within the specified time, release the existing voice communication connection.
CNB200410046389XA 2004-06-08 2004-06-08 A voice communication method on mobile ad hoc network Expired - Fee Related CN100394719C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200410046389XA CN100394719C (en) 2004-06-08 2004-06-08 A voice communication method on mobile ad hoc network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200410046389XA CN100394719C (en) 2004-06-08 2004-06-08 A voice communication method on mobile ad hoc network

Publications (2)

Publication Number Publication Date
CN1585329A CN1585329A (en) 2005-02-23
CN100394719C true CN100394719C (en) 2008-06-11

Family

ID=34601995

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200410046389XA Expired - Fee Related CN100394719C (en) 2004-06-08 2004-06-08 A voice communication method on mobile ad hoc network

Country Status (1)

Country Link
CN (1) CN100394719C (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100384171C (en) * 2006-05-26 2008-04-23 中国科学院计算技术研究所 A Method for Guaranteeing Quality of Service in Mobile Ad Hoc Networks
CN100394739C (en) * 2006-05-26 2008-06-11 中国科学院计算技术研究所 A Method for Guaranteeing Quality of Service in Mobile Ad Hoc Networks
CN101192928B (en) * 2006-12-01 2010-09-29 华为技术有限公司 Authentication method and system for mobile ad hoc network
CN101772025B (en) * 2008-12-29 2012-06-06 中国移动通信集团公司 User identification method, device and system
CN102769885B (en) * 2011-05-04 2015-03-11 中国移动通信集团广东有限公司 Method for realizing routing in sensor network and sensor network
CN102300129A (en) * 2011-08-30 2011-12-28 深圳创维-Rgb电子有限公司 Method for interaction between television and computer
CN103024130A (en) * 2011-09-20 2013-04-03 佳都新太科技股份有限公司 Method for realizing call validity identification by virtue of original called field
KR101233397B1 (en) * 2011-11-30 2013-02-15 (주)케이시크 Method and device for altanative telephony service and method for computing phone bill
CN103188258B (en) * 2011-12-28 2016-05-25 北京东土科技股份有限公司 A kind of encryption device and method that realizes safety amendment information protocol message
CN103281309A (en) * 2013-05-09 2013-09-04 厦门亿联网络技术股份有限公司 Broadcasting system based on VOIP (voice over internet phone)
CN105532038B (en) * 2013-08-27 2020-07-07 索尼公司 Information processing apparatus, information processing method, and computer program
US10484349B2 (en) * 2016-06-20 2019-11-19 Ford Global Technologies, Llc Remote firewall update for on-board web server telematics system
CN106533905A (en) * 2016-11-09 2017-03-22 中国石油大学(华东) Network jumping instant communication technology and system without external network access
CN115242804B (en) * 2022-06-10 2023-07-21 河南信大网御科技有限公司 Method for detecting random number of mimicry executor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678252B1 (en) * 1999-10-28 2004-01-13 Verizon Laboratories Inc. Method and apparatus for dynamic source routing in ad hoc wireless networks
WO2004028111A1 (en) * 2002-09-20 2004-04-01 Cisco Technology, Inc. Method and apparatus in a gateway for registering mobile routers of a mobile ad hoc network to respective home agents

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678252B1 (en) * 1999-10-28 2004-01-13 Verizon Laboratories Inc. Method and apparatus for dynamic source routing in ad hoc wireless networks
WO2004028111A1 (en) * 2002-09-20 2004-04-01 Cisco Technology, Inc. Method and apparatus in a gateway for registering mobile routers of a mobile ad hoc network to respective home agents

Also Published As

Publication number Publication date
CN1585329A (en) 2005-02-23

Similar Documents

Publication Publication Date Title
JP5288210B2 (en) Unicast key management method and multicast key management method in network
RU2407181C1 (en) Authentication of safety and control of keys in infrastructural wireless multilink network
EP2062189B1 (en) Method and system for secure processing of authentication key material in an ad hoc wireless network
JP4682250B2 (en) Wireless router assisted security handoff (WRASH) in multi-hop wireless networks
CN100394719C (en) A voice communication method on mobile ad hoc network
JP5476646B2 (en) Method for establishing a push session and push system and apparatus related thereto
CN101667916B (en) A Method of Using Digital Certificates to Authenticate User Identity Based on Separation Mapping Network
US20120151212A1 (en) Securing home agent to mobile node communication with HA-MN key
US20020133607A1 (en) Address mechanisms in internet protocol
CN102036230B (en) Method for implementing local route service, base station and system
JP2012503385A5 (en)
CN107070846A (en) The method and system of the specific key of access is provided
WO2012092096A1 (en) System and method of provisioning or managing device certificates in a communication network
CN101442403B (en) Self-adapting method for exchanging composite cipher key and managing session cipher key
CN104917605B (en) The method and apparatus of key agreement during a kind of terminal device switching
CN101815294B (en) Access authentication method, equipment and system of P2P (peer-to-peer) network
KR101518438B1 (en) Method for establishing secure network architecture, method and system for secure communication
WO2012130128A1 (en) Method, device, and system for implementing network identifier conversion
WO2014124561A1 (en) Method and method for realizing communication in wlan
JP4000419B2 (en) Route optimization system and method and program
JP4158972B2 (en) Multi-hop communication method
WO2014153908A1 (en) Communication device and wireless communication method
WO2010124549A1 (en) Method, apparatus and system for obtaining public key
CN114760079B (en) A kind of identification network terminal authentication method and related equipment
CN111431858B (en) Centralized safe transmission and authentication method for routing message

Legal Events

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

Owner name: SHANGHAI FEIXUN DATA COMMUNICATION TECHNOLOGY CO.,

Free format text: FORMER OWNER: INST. OF COMPUTING TECHNOLOGY, CHINESE ACADEMY OF SCIENCES

Effective date: 20110117

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100080 NO.6, KEXUEYUAN SOUTH ROAD, ZHONGGUANCUN, BEIJING TO: 201600 NO.90, LANE 4855, GUANGFULIN ROAD, SONGJIANG DISTRICT, SHANGHAI

TR01 Transfer of patent right

Effective date of registration: 20110117

Address after: 201600 Shanghai city Songjiang District Guangfulin road 4855 Lane 90

Patentee after: PHICOMM (SHANGHAI) Co.,Ltd.

Address before: 100080 No. 6 South Road, Zhongguancun Academy of Sciences, Beijing

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20180313

Granted publication date: 20080611

PD01 Discharge of preservation of patent
PD01 Discharge of preservation of patent

Date of cancellation: 20210313

Granted publication date: 20080611

PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20210313

Granted publication date: 20080611

PD01 Discharge of preservation of patent
PD01 Discharge of preservation of patent

Date of cancellation: 20240313

Granted publication date: 20080611

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080611