CN1493140A - 允许数据传输穿越防火墙的方法和设备 - Google Patents

允许数据传输穿越防火墙的方法和设备 Download PDF

Info

Publication number
CN1493140A
CN1493140A CNA028052390A CN02805239A CN1493140A CN 1493140 A CN1493140 A CN 1493140A CN A028052390 A CNA028052390 A CN A028052390A CN 02805239 A CN02805239 A CN 02805239A CN 1493140 A CN1493140 A CN 1493140A
Authority
CN
China
Prior art keywords
computer
packet
fire compartment
sends
compartment wall
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
CNA028052390A
Other languages
English (en)
Other versions
CN1327679C (zh
Inventor
����˹�и���Ƥʲ
克里斯托弗·皮什
Md·沙哈达图拉·汗
���ء����߸�
大卫·埃弗里特·马伍德
麦克·钟
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.)
Voluntary Liaison Pte Ltd
Original Assignee
Eyeball Networks Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=23026907&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1493140(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Eyeball Networks Inc filed Critical Eyeball Networks Inc
Publication of CN1493140A publication Critical patent/CN1493140A/zh
Application granted granted Critical
Publication of CN1327679C publication Critical patent/CN1327679C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • H04L61/2535Multiple local networks, e.g. resolving potential IP address conflicts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2567NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2578NAT traversal without involvement of the NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

当前,经由互联网而在两个受到防火墙保护的计算机之间进行数据传输是很难以解决的,因为防火墙阻拦了输入分组。由此提供了一种方法,用于允许受到第一NAPT或NAT防火墙保护的第一客户计算机C1以及受到第二NAPT或NAT防火墙保护的第二客户计算机之间基于分组的数据传输穿越第一和第二防火墙。该方法还适用于使用NAT或NAPT的其他设备,例如路由器。

Description

允许数据传输穿越防火墙的方法和设备
相关申请
本申请要求享有2001年2月20日在先提交的美国临时专利申请60/269,357,该申请的名称是“允许实时媒体传输穿越计算机网络上的防火墙的方法和设备”(METHOD AND APPARATUS TOPERMIT REAL-TIME MEDIA DELIVERY TO TRAVERSEFIREWALLS ON A COMPUTER NETWORK)。
技术领域
本发明涉及经由计算机网络的数据传输的领域,尤其涉及那些允许使用基于分组的传输协议的数据传输穿越防火墙的方法。
背景技术
连接到类似互联网这种广域网的计算机通常会受到防火墙的保护。防火墙通常用于保护工作在局域网上的计算机,但是它们还可用于保护那些接入广域网的个体计算机,其中包括服务器。在本申请中,术语“客户计算机”包括任何一种接入广域网的计算机,并且还包括一个在这种计算机上运行的程序。这种计算机可以而不是必须工作在一个局域网上,并且该计算机可以执行广域网上的服务器的功能。
防火墙通常执行许多功能。它们使内部计算机免受广域网上外部计算机的攻击,同时允许内部计算机接入广域网。通过允许多个客户计算机共享广域网上一个受限的网际协议(IP)地址,并且通过调节局部网络内部变化而不必对广域网上其它计算机的接入进行重新配置,防火墙还可使局部网络的管理更为有效。
防火墙通常是网络网关服务器上的一个程序或是相关程序的集合,它对每个网络分组进行检查,以便确定是否将其转发到其目的地。为了在内部计算机与外部广域网之间创建一个阻挡层,防火墙通常会使用NAT(网络地址转换)或NAPT(网络地址及端口转换)。NAT是客户计算机使用的(如果客户计算机工作在一个内部网络上,则是内部网络已知的)内部IP地址到外部广域网已知的不同IP地址的转换。防火墙把内部IP地址映射到一个或多个全球的外部IP地址,并且把涉及输入分组的外部IP地址反向映射为内部IP地址。NAPT则是内部IP地址及内部端口到外部网络已知的不同外部IP地址和外部端口的转换。使用NAPT的防火墙通常对输入分组进行筛选,以确保它们来自先前识别的IP地址和端口。也就是说,只有在预先有一个请求从防火墙离开并到达某个IP地址和端口的时候,来自这个IP地址和端口的请求才会穿越防火墙。
经由互联网的数据传输已经成为一件非常平常的事情。很多互联网数据传输被用于把音频和/或视频数据从一个实况播送或者基于点播的流媒体服务器传送到流媒体客户机,以便在客户计算机之间提供实时的交互式通信(例如“聊天”)以及将网页内容从网络服务器传送到网络客户机,此外还可用于网络程序之间许多其他类型的通信。不同的协议被用于发送不同类型的数据。举例来说,文本聊天通常是使用传输控制协议(TCP)来进行发送的,而音频/视频会议以及实况播送的音频/视频流则通常使用UDP(用户数据报协议)来进行发送的。经由直接与互联网相连的服务器(也就是不在防火墙之后)而进行的通信通常不会受到客户端防火墙的阻碍;登录到服务器上的操作通常会打开一条从服务器经由防火墙的返回路径。然而,防火墙通常会阻拦直接进行的客户机-客户机的通信或是“对等(peer-to-peer)”通信。所尝试的一种解决方案是打开防火墙的某些端口,但是这种解决方案:(i)需要修改防火墙设置,这是大多数网络管理员不愿执行的操作;以及(ii)不会对那些执行任何端口转换的防火墙起到作用。本发明提供了一种方法,该方法允许基于分组的数据传输穿越那些使用NAPT或NAT的防火墙,而不改变防火墙设置。作为一种更加通用的情况,本发明是在使用NAPT的防火墙的环境中公开的。然而,本发明中提供的方法同样适用于使用NAT的防火墙,并且适用于使用NAPT或NAT的其他类型的设备,例如路由器。
发明内容
因此,本发明提供了一种将数据分组从第一计算机经由广域计算机网络发送到第二计算机的方法,从第一计算机发送的数据分组具有一个标明第一计算机的第一源地址,从第二计算机发送的数据分组具有一个标明第二计算机的第二源地址,其中第一计算机受到第一防火墙的保护,在把数据分组从第一计算机发送到广域网时,该防火墙将第一源地址转换成一个第一外部地址,而第二计算机则受到第二防火墙的保护,在将数据分组从第二计算机发送到广域网的时候,该防火墙会将第二源地址转换成一个第二外部地址,第一和第二防火墙经由广域计算机网络来进行通信,该方法使用了一个经由广域计算机网络而与第一和第二计算机进行通信的指定的接收计算机,所述方法包括:a)第一和第二计算机将第一和第二数据分组发送到指定的接收计算机;b)指定的接收计算机将来自第一数据分组的第一外部地址传递到第二计算机,并且把来自第二数据分组的第二外部地址传递到所述第一计算机;c)第二计算机将一个数据分组发送到第一外部地址;以及d)第一计算机将一个数据分组发送到所述第二外部地址。
通过附加地让第二计算机把一个数据分组发送到第一外部地址,该方法提供到了数据的双向传输。该方法可以适于受到防火墙保护的多台计算机在广域网上进行通信。防火墙可以是NAT或NAPT。如果IP地址和端口是在防火墙那里进行转换的,或者只有IP地址在防火墙那里进行了转换,那么本方法尤其会起到作用。指定的接收计算机可以是任何类型的计算机,其中包括而非局限于所指定的服务器、数据传输所涉及的对等计算机、或是数据传输未曾涉及的对等计算机。
本发明还提供了一种用于执行前述方法的计算机程序产品,以及一种经由广域网而在两个受到防火墙保护的计算机之间发送数据分组的***。
附图说明
图1是描述本发明优选实施例的示意图;以及
图2是一个描述本发明优选实施例的流程图。
具体实施方式
图1示意性描述了局域网(14)上的一个客户计算机C1(12),它受到NAPT防火墙FW1(16)的保护,希望经由互联网10而将实况播送的视频数据流这种UDP数据流发送到局域网(22)上受到NAPT防火墙FW2(24)保护的客户计算机C2(20)。在这个示意图中,C1具有内部IP地址H1,它会使用内部端口h1来发送UDP数据流。防火墙FW1将这些地址和端口转换成外部IP地址F1和外部端口f1(18)。C2具有内部IP地址H2,它会使用内部端口h2来接收UDP数据流。防火墙FW2将会在外部地址F2以及外部端口f2(26)接收那些指定给C2的UDP分组。C1和C2都登录到一个服务器S1(28)上,其目的是建立一条路径而把UDP数据流从C1发送到C2。然而,UDP数据流并不是通过服务器发送的。该数据流是以客户机-客户机的形式来进行发送的,从而利用了可以从经由互联网的对等通信中得到的效率和可升级性。
大多数防火墙都会阻止对等通信。只有在(i)输入UDP分组的源和目的地地址分别匹配于最近输出的UDP分组的目的地和源地址,以及(ii)输入UDP分组的源和目的地端口分别匹配于最近输出的UDP分组的目的地以及源端口的时候,NAPT防火墙FW1和FW2才会准许输入UDP分组通过。如果C1或C2尝试将一个分组发送到另一方,如果这个输入分组没有满足这些标准,那么接收者的防火墙将会对其加以阻拦。
本发明允许C1通过以下步骤来向C2发送一个UDP数据流:
(1)C1将一个UDP分组U1发送到服务器S1。C1启动从其内部IP地址和UDP端口(H1:h1)开始进行的传输。防火墙FW1在其外部接口将这个IP地址和端口转换成F1:f1。
(2)当S1从F1:f1接收到分组U1时,S1可以将F1和f1识别为外部IP地址和外部端口,由此FW1将会发送始于C1的UDP数据流。
(3)C2将一个UDP分组U2发送到服务器S1。C2启动从其内部IP地址和UDP端口(H2:h2)开始进行的传输。防火墙FW2在其外部接口将这个IP地址和端口转换成F2:f2。
(4)当S1从F2:f2接收到分组U2时,它可以将F2和f2识别为外部IP地址和外部端口,在这个IP地址和端口上,FW2将会接收C1发送到C2的UDP数据流。
(5)S1向C2告知F1:f1即为C1发送UDP数据流的外部IP地址和端口。
(6)S1向C1告知,F2:f2即为指定给C2的UDP数据流应该发至的外部IP地址和端口。
(7)C2使用其内部端口h2而将一个UDP分组U3发送到F1:f1。防火墙FW2会从F2:f2发送该分组。这个分组将会被防火墙FW1所阻拦。然而,如在步骤(8)所述,它会提示防火墙FW2传递那些由C1发送并且指定给C2的后续分组。
(8)当C1随后从其内部端口h1发送一个包含了指定给C2的UDP分组的数据流时,防火墙FW1会把它们从F1:f1发送到F2:f2。由于步骤(7)中发送的分组,因此防火墙FW2会把F1:f1识别为来自F2:f2的分组最近发至的地址和端口。因此,它允许从F1:f1发送到F2:f2的分组穿过防火墙,并且将其转发到H2:h2,也就是C2的内部IP地址和端口。
因此,本发明产生了一种方法,借助于这种方法,C1发起的UDP数据流传递到C2。这个方法可用于流媒体应用,其中C1将一个实况播送或基于点播的数据流发送到C2。与步骤(1)到(8)相似但被反过来执行的步骤允许C2发起的UDP数据流穿过防火墙F1到达C1。因此,C1和C2可以使用那些依赖于UDP数据流的双向传输的应用,例如视频会议。由多个客户计算机C1,……,CN执行的相似步骤允许经由NAPT防火墙来进行一对多、多对一或多对多的UDP数据流传输。
对作用于一个使用NAPT的防火墙的方法而言,步骤(1)和(3)中所发送分组的类型通常与步骤(8)中发送数据所使用的类型相同(也就是TCP、UDP等等)。其原因在于:许多计算机应用程序或防火墙使用了不同的端口来发送和接收不同类型的数据。然而,如果不是这种情况的话,那么步骤(1)和(3)中所发送分组的类型不必与步骤(8)所用类型相同。另外,防火墙FW1在步骤(1)中发送初始分组时使用的外部IP地址和端口必须与随后在步骤(8)中开始向C2发送数据时使用的外部IP地址和端口相同(尽管如以下更加全面描述的那样,该方法可以适配成与IP地址和端口中的后续变化相适应)。由于目前大多数使用NAPT的防火墙程序在内部IP地址和端口以及发送相同类型分组的外部IP地址和端口之间创建了一一映射,因此,假如将客户计算机C1的软件编写为从相同的内部IP地址和端口发送这二者的传输,那么在实施中通常会发生这种情况。同样,防火墙FW2在步骤(3)中必须使用与步骤(8)中开始接收数据时所用外部IP地址和端口相同的外部IP地址和端口来发送分组。假如将客户计算机C2上的软件编写成了在步骤(3)发送分组所用内部IP地址和端口等同于步骤(8)中接收分组所用的内部IP地址和端口,那么在实施中通常也会发生这种情况。
对本领域技术人员来说,很明显,该方法很容易适配成支持C1与C2之间的双向数据传输,从C1到客户计算机C2、……、CN的一对多的数据传输,从客户计算机C2、……、CN到C1的多对一数据传输,或是客户计算机C1、……、CN之间的多对多数据传输。同样,本发明是结合受到防火墙保护的C1和C2来进行描述的,这是因为这种情况提供了关于本发明的最清楚的描述。然而,本发明很容易适于只有接收客户计算机受到防火墙保护的情况。
指定的接收计算机可以是任何类型的计算机,其中包括而非限制于:指定的服务器、数据传输所涉及的对等计算机、或是数据传输未曾涉及的对等计算机。
对本领域技术人员来说,根据前述公开,很明显,在实施本发明的过程中有可能进行许多替换和修改,而不脱离本发明的实质或范围。举例来说,可能的修改和替换可以包括而非局限于以下内容:
1.对于阻止分组损失或延迟的牢固性而言,C1和/或C2可以在步骤(1)和(3)中向S1发送多个分组,而不是单个分组。分组可以一直被发送,直到接收到S1已经接收了其中一个分组的确认为止。
2.并且对于阻止分组损失或延迟的牢固性而言,C2可以在步骤(7)中发送多个分组,而不是单个分组。分组可以一直被发送,直到接收到FW1已经接收了其中一个分组的确认为止。
3.该方法还可以在C1或C2使用分离端口来发送和接收UDP数据流的时候被使用。举例来说,如果C1使用h1来发送UDP数据流并且使用h3来接收数据流,那么防火墙FW1分别将这些端口转换成f1和f3。C2必须从其接收端口向f1发送一个UDP分组,而C1必须从f3向C2的发送端口发送一个UDP分组。这些分组将会打开某些路径,并且C1将会经由这些路径而向C2进行发送(经由f1),C2则会经由该路径而向C1进行发送(经由f3)。
4.在双向通信的情况下,防火墙FW1和FW2使用相同外部端口来发送和接收UDP数据,数据流中的初始数据分组可用作打开路径所需要的分组(如步骤(7))。初始数据分组有可能会被阻拦,直到在另一个方向上发送了一个分组。然而,使用UDP传输的应用通常会抵抗分组丢失,并且只要初始一个或多个数据分组的丢失相对于所讨论的应用并不重要的话,那么该方法都会起到作用。
5.如果防火墙FW1(或FW2)因为任何原因(例如长数据传输或静寂时间)而改变了发送UDP数据时使用的外部IP地址或端口,那么该方法可以适配成刷新那些标识外部IP地址和端口的数据,以便保持开放的传输路径。举例来说,如果FW1改变了用于发送那些源自C1的UDP数据的外部IP地址或端口,那么与上述步骤(1)一样,新分组将会周期性发送到中间服务器S1,以便标识FW1使用的任何新的IP地址或端口。然后可以使用新数据来重复进行剩余步骤(2)到(8)。该方法需要的所有条件是:在一段足以在步骤(1)把初始分组发送到S1的时段中由FW1使用的同一外部发送IP地址和端口来自与UDP数据流中的初始数据分组相同的IP地址和端口。
6.在上述最佳模式中,服务器S1被用作中介来接收C1和C2发出的UDP分组,并且使用包含在这些分组中的信息来识别FW1和FW2所使用的外部端口。然而,用于向每个终端告知其他外部端口的任何其他装置也可以根据本发明来工作。举例来说,C1和C2可以使用不同的回声服务器S1和S2,它们会将任何一个UDP分组返回其来源。这就使得C1和C2能够分别识别F1:f1以及F2:f2。C1和C2可以使用其他任何装置,例如用户进行的信息脱机交换,或者直接到另一方或经由一个普通服务器进行的TCP传输,由此相互告知F1:f1以及F2:f2。
7.本方法可以在客户计算机经由服务器计算机来进行通信的情况下使用,尽管在这种情况下,由于客户计算机通常会在登录到服务器的时候打开一条返回路径,因而通常并不需要本方法。
8.本方法还可用于仅仅接收客户计算机位于防火墙之后、但却没有防火墙保护发送客户计算机的情况。
9.尽管在使用UDP分组的实时音频和视频通信环境中描述了上述方法,但是对本领域技术人员来说,很明显,本发明具有与其他形式的基于分组的数据传输相关的应用。
10.通过从接收分组中推导出映射方案,然后使用所推导的映射方案从每个客户计算机的外部接收IP地址及端口将所需分组发送到其他每个客户计算机的外部接收IP地址和端口,本方法还适于那些不在内部和外部IP地址及端口之间创建一一映射的防火墙。
11.虽然结合NAPT防火墙而对本发明进行了描述,但是如果防火墙FW1和FW2是NAT防火墙,那么本发明也能以相同方式操作。在这种情况下,NAT FW1会将H1:h1转换成F1:h1,而NATFW2则将H2:h2转换成F2:h2。在其他方面,本发明是相同的。
说明书附图
图1
28服务器S1;10互联网;16防火墙FW1;14客户计算机C1;22客户计算机C2;24防火墙FW2
图2(从上到下)
C1从其内部IP地址及UDP端口(H1:h1)发送一个UDP分组U1
防火墙FW1将这个IP地址和端口转换成F1:f1
C2从其内部IP地址及UDP端口(H2:h2)发送一个UDP分组U2
防火墙FW2将这个IP地址和端口转换成F2:f2
S1告知S2:F1:f1即为C1发送UDP数据流的IP地址和端口,并且S1告知C1:F2:f2即为指定给C2的UDP数据流应该发至的IP地址和端口
C2使用其外部端口h2而将一个UDP分组U3发送到F1:f1,并且防火墙FW2从F2:f2发送该分组
C1从其内部端口h1发送一个指定给C2的UDP分组,并且防火墙FW1将其从F1:f1发送到F2:f2
防火墙FW2将F1:f1识别为它从F2:f2发送的分组所发至的地址和端口,并且它允许从F1:f1发送到F2:f2的分组穿越该防火墙,并且防火墙FW2将这些分组转发到H2:h2,也就是C2的内部IP地址和端口

Claims (30)

1.一种将数据分组从第一计算机经由广域计算机网络发送到第二计算机的方法,从所述第一计算机发送的数据分组具有一个标明所述第一计算机的第一源地址,从所述第二计算机发送的数据分组具有一个标明所述第二计算机的第二源地址,其中所述第一计算机受到第一防火墙的保护,在把数据分组从所述第一计算机发送到所述广域网的时候,该防火墙将所述第一源地址转换成一个第一外部地址,而所述第二计算机则受到第二防火墙的保护,在将数据分组从所述第二计算机发送到所述广域网的时候,该防火墙会把所述第二源地址转换成一个第二外部地址,所述第一和第二防火墙经由所述广域计算机网络来进行通信,所述方法使用了一个经由所述广域计算机网络而与所述第一和第二计算机进行通信的指定接收计算机,所述方法包括:
a)所述第一和第二计算机将第一和第二数据分组发送到所述指定接收计算机;
b)所述的指定接收计算机将来自所述第一数据分组的所述第一外部地址传递到所述第二计算机,并且把来自所述第二数据分组的所述第二外部地址传递到所述第一计算机;
c)所述第二计算机将一个数据分组发送到所述第一外部地址;以及
d)所述第一计算机将一个数据分组发送到所述第二外部地址。
2.一种允许在广域计算机网络上进行第一计算机与第二计算机之间数据分组的双向传输的方法,从所述第一计算机发送的数据分组具有一个标明所述第一计算机的第一源地址,从所述第二计算机发送的数据分组具有一个标明所述第二计算机的第二源地址,其中所述第一计算机受到第一防火墙的保护,在把数据分组从所述第一计算机发送到所述广域网的时候,该防火墙将所述第一源地址转换成一个第一外部地址,而所述第二计算机则受到第二防火墙的保护,在将数据分组从所述第二计算机发送到所述广域网的时候,该防火墙会把所述第二源地址转换成一个第二外部地址,所述第一和第二防火墙经由所述广域计算机网络来进行通信,所述方法使用了一个经由所述广域计算机网络而与所述第一和第二计算机进行通信的指定接收计算机,所述方法包括:
a)所述第一和第二计算机将第一和第二数据分组发送到所述指定接收计算机;
b)所述的指定接收计算机将来自所述第一数据分组的所述第一外部地址传递到所述第二计算机,并且把来自所述第二数据分组的所述第二外部地址传递到所述第一计算机;
c)所述第二计算机将一个第一数据分组发送到所述第一外部地址;
d)所述第一计算机将一个数据分组发送到所述第二外部地址;以及
e)所述第二计算机将一个第二数据分组发送到所述第一外部地址。
3.一种允许在广域计算机网络上进行多个计算机之中任意两个计算机之间的数据分组的双向传输的方法,从每个计算机发送的数据分都具有一个标明所述计算机的源地址,其中每个计算机都受到一个防火墙的保护,在从所述计算机向所述广域网发送数据分组的时候,该防火墙将所述计算机的所述源地址转换成一个外部地址,所述防火墙经由所述广域计算机网络来进行通信,所述方法使用了一个经由所述广域计算机网络而与所述多个计算机进行通信的指定接收计算机,所述方法包括:
a)所述多个计算机将相应的数据分组发送到所述指定的接收计算机;
b)所述指定的接收计算机把来自所述数据分组的相应的外部地址传递到所述多个计算机;
c)所述多个计算机中的第一计算机具有一个第一外部地址,用于将第一数据分组发送到与所述多个计算机中的第二计算机相关联的第二外部地址;
d)所述第二计算机将一个数据分组发送到所述第一外部地址;以及
e)所述第一计算机将一个第二数据分组发送到所述第二外部地址。
4.权利要求1或2的方法,其特征在于,从所述第一计算机发送的数据分组还具有一个标明所述第一计算机的第一端口,从所述第二计算机发送的数据分组具有一个标明所述第二计算机的第二端口,在将数据分组从所述第一计算机发送到所述广域网的时候,所述第一防火墙还将所述第一端口转换成一个第一外部端口,并且所述第二计算机受到一个第二防火墙的保护,在将数据分组从所述第二计算机发送到所述广域网的时候,该防火墙还将所述第二端口转换成一个第二外部端口。
5.权利要求1到4的方法,其特征在于,所述防火墙是NAPT防火墙。
6.权利要求1到3的方法,其特征在于,所述防火墙是NAT防火墙。
7.权利要求1到3的方法,其特征在于,所述数据分组包括UDP数据流。
8.权利要求1到3的方法,其特征在于,所述数据分组包括实况播送的音频/视频数据流。
9.权利要求1到3的方法,其特征在于,所述数据分组包括所保存的音频/视频数据。
10.权利要求1到3的方法,其特征在于,所述数据分组包括所保存的计算机文件的内容。
11.权利要求1到3的方法,其特征在于,所述数据分组包括支持音频/视频会议通信的数据流。
12.权利要求1到3的方法,其特征在于,多个数据分组是由所述第一和第二计算机在步骤(a)发送的。
13.权利要求1到3的方法,其特征在于,多个数据分组是在步骤c)中发送的。
14.权利要求1到3的方法,其特征在于,多个数据分组是在步骤d)中发送的。
15.权利要求2或3的方法,其特征在于,多个数据分组是在步骤e)中发送的。
16.权利要求1或2的方法,其特征在于,所述第一和第二计算机使用不同内部端口来发送和接收所述数据分组,这些内部端口映射到不同的外部端口,以便发送和接收所述数据分组,并且权利要求1中步骤(c)以及权利要求2中步骤(c)和(d)的分组是从每个防火墙的接收端口发送到其他防火墙的发送端口的。
17.权利要求1到3的方法,其特征在于,这些步骤被周期性重复,以便适应于某些或全部防火墙所使用的外部端口中的变化。
18.权利要求1到4的方法,其特征在于,所述指定的接收计算机是一个普通的服务器。
19.权利要求1到4的方法,其特征在于,所述指定的接收计算机是涉及数据传输的对等计算机。
20.权利要求1到4的方法,其特征在于,所述指定的接收计算机是不涉及数据传输的对等计算机。
21.权利要求1到3的方法,其特征在于,所述指定的接收计算机是一个回声服务器,并且所述回声服务器通过将每个分组返回到作为其来源的所述第一或第二计算机而把所述地址传递到所述第一或第二计算机,并且所述第一或第二计算机将所述地址传递到其他计算机。
22.权利要求1到3的方法,其特征在于,所述第一和第二计算机经由一个服务器计算机来发送数据。
23.一种用于将一个数据分组从第一计算机经由一个广域计算机网络发送到第二计算机的计算机程序产品,从所述第一计算机发送的数据分组具有一个标明所述第一计算机的第一源地址,从所述第二计算机发送的数据分组具有一个标明所述第二计算机的第二源地址,其中所述第一计算机受到第一防火墙的保护,在把数据分组从所述第一计算机发送到所述广域网的时候,该防火墙将所述第一源地址转换成一个第一外部地址,而所述第二计算机则受到第二防火墙的保护,在将数据分组从所述第二计算机发送到所述广域网的时候,该防火墙会把所述第二源地址转换成一个第二外部地址,所述第一和第二防火墙经由所述广域计算机网络来进行通信,所述方法使用了一个经由所述广域计算机网络而与所述第一和第二计算机进行通信的指定接收计算机,所述计算机程序产品包括:
a)一个计算机可用介质,在这种介质中包含了计算机可读程序代码装置,用于使所述第一和第二计算机将第一和第二数据分组发送到所述指定接收计算机;
b)该计算机可用介质包含了计算机可读程序代码装置,用于使所述指定接收计算机将来自所述第一数据分组的所述第一外部地址传递到所述第二计算机,并且把来自所述第二数据分组的所述第二外部地址传递到所述第一计算机;
c)该计算机可用介质包含了计算机可读程序代码装置,用于使所述第二计算机将一个数据分组发送到所述第一外部地址;以及
d)该计算机可用介质包含了计算机可读程序代码装置,用于使所述第一计算机将一个数据分组发送到所述第二外部地址。
24.一种允许在广域计算机网络上进行第一计算机与第二计算机之间数据分组的双向传输的计算机程序产品,从所述第一计算机发送的数据分组具有一个标明所述第一计算机的第一源地址,从所述第二计算机发送的数据分组具有一个标明所述第二计算机的第二源地址,其中所述第一计算机受到第一防火墙的保护,在把数据分组从所述第一计算机发送到所述广域网的时候,该防火墙将所述第一源地址转换成一个第一外部地址,而所述第二计算机则受到第二防火墙的保护,在将数据分组从所述第二计算机发送到所述广域网的时候,该防火墙会把所述第二源地址转换成一个第二外部地址,所述第一和第二防火墙经由所述广域计算机网络来进行通信,所述方法使用了一个经由所述广域计算机网络而与所述第一和第二计算机进行通信的指定接收计算机,所述方法包括:
a)一种计算机可用介质,其中包含了计算机可读程序代码装置,用于使所述第一和第二计算机将第一和第二数据分组发送到所述指定接收计算机;
b)该计算机可用介质包含了计算机可读程序代码装置,用于使所述指定接收计算机将来自所述第一分组的所述第一外部地址传递到所述第二计算机,并且把来自所述第二分组的所述第二外部地址传递到所述第一计算机;
c)该计算机可用介质包含了计算机可读程序代码装置,用于使所述第二计算机将一个数据分组发送到所述第一外部地址;
d)该计算机可用介质包含了计算机可读程序代码装置,用于使所述第一计算机将一个数据分组发送到所述第二外部地址;以及
e)该计算机可用介质包含了计算机可读程序代码装置,用于使所述第一计算机将一个数据分组发送到所述第二外部地址。
25.权利要求23或24的计算机程序产品,其特征在于,所述实时媒体传输包括实况播送的音频/视频数据。
26.权利要求23或24的计算机程序产品,其特征在于,所述实时媒体传输包括所保存的基于点播的流媒体音频/视频数据。
27.权利要求23或24的计算机程序产品,其特征在于,所述实时媒体传输包括所保存的计算机文件的内容。
28.权利要求23或24的计算机程序产品,其特征在于,所述实时媒体传输包括音频/视频会议通信。
29.权利要求23或24的计算机程序产品,其特征在于,该程序使该计算机程序所在的计算机进行操作,以便将一个UDP数据分组发送到一个中介,从而对指派给它的外部发送端口加以识别,并且从这个中介接收数据,以便对指派给其他参与者的外部接收端口加以识别。
30.一种用于经由广域网而在两个受到防火墙保护的计算机之间发送数据分组的***,所述***包括:
a)适配成通过广域计算机网络来进行通信的第一和第二计算机,其中从所述第一计算机发送的数据分组具有一个标明所述第一计算机的第一源地址,从所述第二计算机发送的数据分组具有一个标明所述第二计算机的第二源地址,其中所述第一计算机受到第一防火墙的保护,在把数据分组从所述第一计算机发送到所述广域网的时候,该防火墙将所述第一源地址转换成一个第一外部地址,而所述第二计算机则受到第二防火墙的保护,在将数据分组从所述第二计算机发送到所述广域网的时候,该防火墙将所述第二源地址转换成一个第二外部地址,所述第一和第二防火墙经由所述广域计算机网络来进行通信,
b)一个经由所述广域计算机网络而与所述第一和第二计算机进行通信的指定接收计算机;
其中所述第一和第二计算机包括装置,用于将所述第一和第二数据分组发送到所述指定接收计算机;所述指定接收计算机包括装置,用于把来自所述第一数据分组的所述第一外部地址发送到所述第二计算机,并且把来自所述第二数据分组的所述第二外部地址发送到所述第一计算机;所述第二计算机包括装置,用于将一个数据分组发送到所述第一外部地址;并且所述第一计算机包括装置,用于将一个数据分组发送到所述第二外部地址。
CNB028052390A 2001-02-20 2002-02-19 允许数据传输穿越防火墙的方法和设备 Expired - Fee Related CN1327679C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US26935701P 2001-02-20 2001-02-20
US60/269,357 2001-02-20

Publications (2)

Publication Number Publication Date
CN1493140A true CN1493140A (zh) 2004-04-28
CN1327679C CN1327679C (zh) 2007-07-18

Family

ID=23026907

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028052390A Expired - Fee Related CN1327679C (zh) 2001-02-20 2002-02-19 允许数据传输穿越防火墙的方法和设备

Country Status (10)

Country Link
US (1) US7602784B2 (zh)
EP (1) EP1362460B2 (zh)
JP (1) JP3917076B2 (zh)
KR (1) KR100949510B1 (zh)
CN (1) CN1327679C (zh)
AT (1) ATE324736T1 (zh)
CA (2) CA2761983C (zh)
CY (1) CY1105508T1 (zh)
DE (1) DE60210927T3 (zh)
WO (1) WO2002067531A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006119683A1 (fr) * 2005-05-12 2006-11-16 Zte Corporation Procede d'implementation de traversee nat mms
WO2007019809A1 (fr) * 2005-08-18 2007-02-22 Tencent Technology (Shenzhen) Company Limited Procede et systeme d'etablissement d'un canal direct point par point
CN100426769C (zh) * 2005-01-12 2008-10-15 腾讯科技(深圳)有限公司 一种建立对等直连通道的方法
CN1758653B (zh) * 2004-10-04 2010-05-05 阿尔卡特公司 电信网络中设定路由的方法、电信网络及安全和隧道设备
CN101431511B (zh) * 2007-11-09 2013-03-06 友讯科技股份有限公司 一种穿透防火墙在网络终端装置间建立联机信道的方法
CN104660722A (zh) * 2013-11-21 2015-05-27 倚强科技股份有限公司 网络连线方法及其网络***
CN109787986A (zh) * 2019-01-29 2019-05-21 黄策 文件碎片化公网安全传输方法

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266266B2 (en) 1998-12-08 2012-09-11 Nomadix, Inc. Systems and methods for providing dynamic network authorization, authentication and accounting
US7194554B1 (en) 1998-12-08 2007-03-20 Nomadix, Inc. Systems and methods for providing dynamic network authorization authentication and accounting
US8713641B1 (en) 1998-12-08 2014-04-29 Nomadix, Inc. Systems and methods for authorizing, authenticating and accounting users having transparent computer access to a network using a gateway device
US7068655B2 (en) * 2001-06-14 2006-06-27 Nortel Networks Limited Network address and/or port translation
US20030009561A1 (en) * 2001-06-14 2003-01-09 Sollee Patrick N. Providing telephony services to terminals behind a firewall and /or network address translator
US7769865B1 (en) * 2001-10-16 2010-08-03 Sprint Communications Company L.P. Configuring computer network communications in response to detected firewalls
US7752334B2 (en) 2002-10-15 2010-07-06 Nomadix, Inc. Intelligent network address translator and methods for network address translation
JP4374202B2 (ja) 2003-02-28 2009-12-02 株式会社日立製作所 ストリーム配信計算機、プログラム、nas装置
US7363378B2 (en) * 2003-07-01 2008-04-22 Microsoft Corporation Transport system for instant messaging
CN1317874C (zh) * 2003-09-27 2007-05-23 财团法人资讯工业策进会 提供虚拟主机服务快速查询置换的网络地址端口转换网关器与方法
CN100382552C (zh) * 2003-10-17 2008-04-16 西安大唐电信有限公司 穿透防火墙建立voip通信的方法
US7886057B2 (en) * 2003-10-20 2011-02-08 Logitech Europe S.A. Method and apparatus for communicating data between two hosts
TWI257217B (en) * 2003-11-10 2006-06-21 Inst Information Industry Method to detect the form of network address translation
CN100414938C (zh) * 2004-01-05 2008-08-27 华为技术有限公司 一种网络安全***和方法
WO2005078593A1 (ja) * 2004-02-13 2005-08-25 Sony Chemicals Corporation 業務プロセスシステム及び業務プロセス方法、並びに情報処理装置
JP2008505512A (ja) * 2004-04-12 2008-02-21 エックスディエス・インコーポレイテッド ファイアウォールを有するサーバとファイアウォールを有するクライアントとの間の安全なインターネット接続を自動的に起動し動的に確立するためのシステムおよび方法
US7948890B2 (en) * 2004-12-14 2011-05-24 Industrial Technology Research Institute System and method for providing a communication channel
US20060230163A1 (en) * 2005-03-23 2006-10-12 Fish Russell H Iii System and method for securely establishing a direct connection between two firewalled computers
JP4557803B2 (ja) * 2005-05-27 2010-10-06 富士通株式会社 ネットワークシステム及び通信方法
JP4721782B2 (ja) * 2005-06-16 2011-07-13 パナソニック株式会社 通信管理装置および通信システム
KR101361061B1 (ko) 2007-04-09 2014-02-07 삼성전자주식회사 서버/클라이언트 네트워크에서의 효율적인 정보 전송 방법및 이를 이용한 서버 장치와 클라이언트 장치
KR100917660B1 (ko) * 2009-05-11 2009-09-18 (주)비전소프트 연계아답터를 이용한 방화벽 단일포트를 통해 내부망과 외부망의 서버들 간의 네트워크 연결 시스템
US8886756B2 (en) * 2011-05-13 2014-11-11 Qualcomm Incorporated Exchanging data between a user equipment and an application server
TWI484804B (zh) * 2011-11-09 2015-05-11 Quanta Comp Inc 網路系統之資料管理方法及其相關系統
CN102497446B (zh) * 2011-12-26 2015-04-15 杭州华三通信技术有限公司 一种穿越nat设备的业务流传输方法及装置
US10085070B2 (en) 2015-12-29 2018-09-25 The Directv Group, Inc. Network address translator (NAT) traversal for out of home streaming
WO2022126200A1 (en) * 2020-12-18 2022-06-23 Dull Pty Ltd Method for establishing trusted data communication between networks
FR3119290A1 (fr) * 2021-01-27 2022-07-29 Eho.Link Procede d’etablissement d’un canal de communication poste-a-poste securise, dedie a une application reseau, entre deux equipements reseau distants

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721908A (en) * 1995-06-07 1998-02-24 International Business Machines Corporation Computer network for WWW server data access over internet
US5793763A (en) * 1995-11-03 1998-08-11 Cisco Technology, Inc. Security system for network address translation systems
US5673322A (en) * 1996-03-22 1997-09-30 Bell Communications Research, Inc. System and method for providing protocol translation and filtering to access the world wide web from wireless or low-bandwidth networks
EP0858201A3 (en) * 1997-02-06 1999-01-13 Sun Microsystems, Inc. Method and apparatus for allowing secure transactions through a firewall
NZ500566A (en) * 1997-05-12 2002-05-31 Mlk Software Internet based collection of data with data validation at source and centralized database
US6259701B1 (en) * 1997-09-11 2001-07-10 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
US6618368B1 (en) * 1998-02-19 2003-09-09 Hitachi, Ltd. Data gateway and method for relaying data
US6055236A (en) * 1998-03-05 2000-04-25 3Com Corporation Method and system for locating network services with distributed network address translation
US6496935B1 (en) * 2000-03-02 2002-12-17 Check Point Software Technologies Ltd System, device and method for rapid packet filtering and processing
US7797433B2 (en) * 2000-06-30 2010-09-14 Net2Phone System, method, and computer program product for resolving addressing in a network including a network address translator
US20020032798A1 (en) * 2000-09-08 2002-03-14 Wei Xu Systems and methods for packet sequencing
KR20010008358A (ko) * 2000-11-27 2001-02-05 조용근 인트라넷을 기반으로 하는 전자상거래 시스템과 그 운영방법
US6993012B2 (en) * 2001-02-20 2006-01-31 Innomedia Pte, Ltd Method for communicating audio data in a packet switched network

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1758653B (zh) * 2004-10-04 2010-05-05 阿尔卡特公司 电信网络中设定路由的方法、电信网络及安全和隧道设备
CN100426769C (zh) * 2005-01-12 2008-10-15 腾讯科技(深圳)有限公司 一种建立对等直连通道的方法
WO2006119683A1 (fr) * 2005-05-12 2006-11-16 Zte Corporation Procede d'implementation de traversee nat mms
WO2007019809A1 (fr) * 2005-08-18 2007-02-22 Tencent Technology (Shenzhen) Company Limited Procede et systeme d'etablissement d'un canal direct point par point
CN1917512B (zh) * 2005-08-18 2010-09-29 腾讯科技(深圳)有限公司 一种建立对等直连通道的方法
CN101431511B (zh) * 2007-11-09 2013-03-06 友讯科技股份有限公司 一种穿透防火墙在网络终端装置间建立联机信道的方法
CN104660722A (zh) * 2013-11-21 2015-05-27 倚强科技股份有限公司 网络连线方法及其网络***
CN109787986A (zh) * 2019-01-29 2019-05-21 黄策 文件碎片化公网安全传输方法

Also Published As

Publication number Publication date
CY1105508T1 (el) 2010-04-28
ATE324736T1 (de) 2006-05-15
US7602784B2 (en) 2009-10-13
DE60210927T3 (de) 2012-03-15
JP2004528748A (ja) 2004-09-16
DE60210927T2 (de) 2006-09-14
CA2761983A1 (en) 2002-08-29
WO2002067531A1 (en) 2002-08-29
CA2476722A1 (en) 2002-08-29
JP3917076B2 (ja) 2007-05-23
KR20030080006A (ko) 2003-10-10
US20040095937A1 (en) 2004-05-20
CN1327679C (zh) 2007-07-18
CA2476722C (en) 2011-12-20
KR100949510B1 (ko) 2010-03-24
EP1362460A1 (en) 2003-11-19
EP1362460B1 (en) 2006-04-26
DE60210927D1 (de) 2006-06-01
EP1362460B2 (en) 2010-09-29
CA2761983C (en) 2012-11-27

Similar Documents

Publication Publication Date Title
CN1493140A (zh) 允许数据传输穿越防火墙的方法和设备
US7522594B2 (en) Method and apparatus to permit data transmission to traverse firewalls
US6006272A (en) Method for network address translation
US7587758B2 (en) Systems and methods for distributing data packets over a communication network
CN101036371A (zh) 用于对第二层隧道协议中的重叠的因特网协议地址进行映射的装置和方法
CN1507734A (zh) 通用外部代理
CN1835465A (zh) 用于减少由中继分配的端口数的方法和***
CN1574788A (zh) Ip组播分布***、流数据分布***及其程序
CN1716941A (zh) 用于建立双向对等通信链路的方法和呼叫服务器
CN101043430A (zh) 一种设备之间网络地址转换的方法
CN1496642A (zh) 具有对于接入规则的索引的防火墙
CN1863138A (zh) 一种实现多媒体业务nat穿越的方法
CN1863152A (zh) 内网用户之间传递各种报文的方法
CN1275443C (zh) 网络处理器内部实现分布式应用层转换网关的方法
CN1783835A (zh) 一种在Internet网络中逐跳识别实时业务的方法
CN1764172A (zh) 穿越网络地址转换和防火墙的多媒体通信代理***及方法
US20080165782A1 (en) Method for Data Interchange Between Network Elements
CN1960330A (zh) 用于重定向网络通信连接的方法及装置
EP2070264B1 (en) Methods, systems, and computer program products for throttling network address translation (nat) learning traffic in a voice over ip device
CN100571189C (zh) 在网络中实现设备间通讯的方法
CN1783877A (zh) 实时通讯数据流穿越网络地址转换设备和防火墙的方法
CN1561038A (zh) 多个ip语音接入设备汇聚接入的方法
CN1832437A (zh) H.323***的多媒体会话穿越nat设备的方法
CN1556628A (zh) 实现信令、语音跨网传输的方法
EP2141888B1 (en) System and method for bend-in-the-wire adjacency management

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160907

Address after: Singapore Singapore

Patentee after: Voluntary liaison Pte Ltd

Address before: British Columbia

Patentee before: Eyeball Networks Inc.

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

Granted publication date: 20070718

Termination date: 20170219

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