一種地址轉換設備分配端口的方法和地址轉換設備的制作方法
【專利摘要】本發明公開了一種地址轉換設備分配端口的方法和地址轉換設備,為用戶應用使用的私有IP地址分配公有IP地址和端口塊,并在端口塊內設置重要應用專用端口塊;當用戶應用屬于重要應用時,NAT設備在對私有IP地址進行轉換時,從重要應用專用端口塊中獲取端口。本發明公開的地址轉換設備分配端口的方法和地址轉換設備,根據用戶應用的類型進行差異化分配端口,在用戶的端口塊內的端口分配完畢后,用戶后續的重要應用仍然可以獲取端口資源從而不影響用戶的應用體驗,從而提高用戶的應用體驗。
【專利說明】一種地址轉換設備分配端口的方法和地址轉換設備
【技術領域】
[0001]本發明涉及網絡地址轉換【技術領域】,尤其涉及一種地址轉換設備分配端口的方法和地址轉換設備。
【背景技術】
[0002]IANACThe Internet Assigned Numbers Authority:互聯網數字分配機構)的公有IPv4地址已經分配完畢,而向基于IPv6的下一代互聯網過渡是一個長期過程,過渡期間將不可避免引入私網IPv4地址,因此需在現有網絡內部署地址轉換NAT設備。NAT (NetworkAddressTranslation)屬接入廣域網(WAN)技術,是一種將私有(保留)地址轉化為合法IP地址的轉換技術,它被廣泛應用于各種類型Internet接入方式和各種類型的網絡中。NAT不僅解決了 IP地址不足的問題,而且還能夠有效地避免來自網絡外部的攻擊,隱藏并保護網絡內部的計算機。
[0003]接入用戶采用私有IP地址上網時,傳統的地址轉換設備從公有IP地址池中分配一個共有IPv4地址,再隨機分配一個端口,形成私有IP地址與公有IP地址+端口的映射關系,地址轉換設備通過Log日志記錄該地址映射關系,并通過Syslog協議實時地告知溯源系統,以實現用戶溯源。這種基于每連接隨機分配公有IPv4地址和端口的方式將會產生大量log信息,log信息上送溯源系統不僅要占用大量的網絡資源,而且基于UDP的Syslog協議不能確保log信息的安全無差錯傳送,影響溯源的實時性和準確性。
[0004]為了解決上述問題,業界提出了一種解決基于用戶的端口塊分配方案,由網絡地址轉換設備生成私有IPv4地址與公有IP地址、端口塊的固定映射關系,同時溯源系統采用相同的方法生成相同的映射關系。這種方法給用戶分配一個固定的端口塊,用戶上網時從端口塊中隨機分配一個端口,這種方法不需要地址轉換設備將地址映射關系實時上報溯源系統,但是如果分配給用戶的端口塊內的端口資源分配完畢,用戶將不能繼續使用網絡應用,用戶的一些重要的應用將受到影響。
【發明內容】
[0005]有鑒于此,本發明要解決的一個技術問題是提供一種地址轉換設備分配端口的方法,根據用戶應用的類型進行差異化分配端口。
[0006]一種地址轉換NAT設備分配端口的方法,包括:NAT設備為用戶應用使用的私有IP地址分配公有IP地址和端口塊;所述NAT設備將私有IP地址轉換為所述公有IP地址加所述端口塊中的端口號的形式;所述NAT設備在所述端口塊內設置重要應用專用端口塊;當用戶應用屬于重要應用時,所述NAT設備在對私有IP地址進行轉換時,從所述重要應用專用端口塊中獲取端口;其中,所述用戶應用的類型分為普通應用和重要應用。
[0007]根據本發明的方法的一個實施例,進一步的,當重要應用專用端口塊中的端口使用完時,則所述NAT設備為重要應用使用的私有IP地址分配所述端口塊中、不屬于所述重要應用專用端口塊的端口號。[0008]根據本發明的方法的一個實施例,進一步的,當用戶應用建立新的會話session時,根據所述session的目的端口信息,判斷所述用戶應用的類型;如果所述session為重要應用,判斷所述重要應用專用端口塊剩余的端口數,如果剩余端口數大于0,則所述NAT設備從所述重要應用專用端口塊中選取最小的端口號分配給所述session ;如果剩余端口數等于0,進一步判斷所述端口塊中、不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述NAT設備分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session ;如果端口數等于O,對普通應用使用的端口進行隨機釋放,貝Ij所述NAT設備將此被釋放的端口號分配給所述session。
[0009]根據本發明的方法的一個實施例,進一步的,如果所述session為普通應用,判斷所述端口塊中不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述NAT設備分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session ;如果端口數等于O,則不為所述session分配端口號。
[0010]根據本發明的方法的一個實施例,進一步的,所述重要應用包括:Http應用、Email應用、Ftp應用、Telnet應用或VoIP應用。
[0011]本發明要解決的一個技術問題是提供一種地址轉換NAT設備,能夠根據用戶應用的類型進行差異化分配端口。
[0012]一種地址轉換NAT設備,包括:地址和端口分配裝置,用于為用戶應用使用的私有IP地址分配公有IP地址和端口塊;并且,在所述端口塊內設置重要應用專用端口塊;地址轉換裝置,用于將私有IP地址轉換為所述公有IP地址加所述端口塊中的端口號的形式;當用戶應用屬于重要應用時,在對私有IP地址進行轉換時,從所述重要應用專用端口塊中獲取端口 ;其中,所述用戶應用的類型分為普通應用和重要應用。
[0013]根據本發明的設備的一個實施例,進一步的,當重要應用專用端口塊中的端口使用完時,則所述地址轉換裝置為重要應用使用的私有IP地址分配所述端口塊中、不屬于所述重要應用專用端口塊的端口號。
[0014]根據本發明的設備的一個實施例,進一步的,當用戶應用建立新的會話session時,所述地址轉換裝置根據所述session的目的端口信息,判斷所述用戶應用的類型;如果所述session為重要應用,判斷所述重要應用專用端口塊剩余端口數,如果剩余端口數大于0,則所述地址轉換裝置從所述重要應用專用端口塊中選取最小的端口號分配給所述session;如果剩余端口數等于0,進一步判斷所述端口塊中不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述地址轉換裝置分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session ;如果端口數等于0,對普通應用使用的端口進行隨機釋放,則所述地址轉換裝置將此被釋放的端口號分配給所述session。
[0015]根據本發明的設備的一個實施例,進一步的,如果所述session為普通應用,所述地址轉換裝置判斷所述端口塊中不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述地址轉換裝置分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session ;如果端口數等于0,則所述地址轉換裝置不為所述session分配端口號。
[0016]根據本發明的設備的一個實施例,進一步的,所述重要應用包括:Http應用、Email應用、Ftp應用、Telnet應用或VoIP應用。[0017]本發明的地址轉換設備分配端口的方法和地址轉換設備,根據用戶應用的類型進行差異化分配端口,在用戶的端口塊內的端口分配完畢后,用戶后續的重要應用仍然可以獲取端口資源從而不影響用戶的應用體驗,從而提高用戶的應用體驗。
【專利附圖】
【附圖說明】
[0018]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
[0019]圖1為根據本發明的地址轉換設備分配端口的方法的一個實施例的流程圖;
[0020]圖2A-2C為根據本發明的地址轉換設備分配端口的方法的一個實施例中端口塊設置的示意圖;
[0021]圖3為根據本發明的地址轉換設備分配端口的方法的另一個實施例的流程圖;
[0022]圖4為根據本發明的地址轉換設備的一個實施例的示意圖。
【具體實施方式】
[0023]下面參照附圖對本發明進行更全面的描述,其中說明本發明的示例性實施例。下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0024]圖1為根據本發明的地址轉換設備分配端口的方法的一個實施例的流程圖;如圖1所示:
[0025]步驟102,NAT設備為用戶應用使用的私有IP地址分配公有IP地址和端口塊;NAT設備將私有IP地址轉換為公有IP地址加端口塊中的端口號的形式。根據一個實施例,對多個用戶應用的多個私有IP地址的轉換分配一個公有IP地址和端口塊,也可以對多個用戶應用的多個私有IP地址的轉換分配多個公有IP地址和端口塊,在轉換地址時選取多個公有IP地址中的一個IP地址。
[0026]步驟103,NAT設備在端口塊內設置重要應用專用端口塊。
[0027]步驟104,當用戶應用屬于重要應用時,NAT設備在對私有IP地址進行轉換時,從重要應用專用端口塊中獲取端口。
[0028]用戶應用的類型分為普通應用和重要應用,可以根據具體的應用類型進行設置,由運營商或用戶進行確定哪種業務是重要應用。
[0029]根據本發明的一個實施例,當重要應用專用端口塊中的端口使用完時,則NAT設備為重要應用使用的私有IP地址分配端口塊中、不屬于重要應用專用端口塊的端口號。
[0030]當用戶應用建立新的會話session時,根據session的目的端口信息,判斷用戶應用的類型;如果session為重要應用,判斷重要應用專用端口塊剩余的端口數,如果剩余端口數大于0,則NAT設備從重要應用專用端口塊中選取最小的端口號分配給session。
[0031]如果剩余端口數等于0,進一步判斷端口塊中、不屬于重要應用專用端口塊的端口數的大小,如果端口數大于O,則NAT設備分配端口塊中不屬于重要應用專用端口塊的最小的端口號給session ;如果端口數等于O,對普通應用使用的端口進行隨機釋放,則NAT設備將此被釋放的端口號分配給session。
[0032]如果session為普通應用,判斷端口塊中不屬于重要應用專用端口塊的端口數的大小,如果端口數大于0,則NAT設備分配端口塊中不屬于重要應用專用端口塊的最小的端口號給session ;如果端口數等于O,則不為session分配端口號。
[0033]圖2A-2C為根據本發明的地址轉換設備分配端口的方法的一個實施例中端口塊設置的示意圖。本發明的方法基于用戶分配的固定端口塊,預留一段端口給用戶的重要應用專用,即為重要應用專用端口塊。普通應用只能使用非預留的端口。用戶的重要應用優先選用預留的端口,預留端口使用完后可以繼續使用非預留的端口,如果非預留的端口已經被普通業務使用完畢,則釋放普通應用的端口,分配給后續的重要應用使用。
[0034]用戶使用私有IP地址a上網,地址轉換設備根據算法或直接配置的映射表將其源地址a轉換成公有IP地址A,同時分配固定的端口塊[port_min, port_max],即:a—> (A,[port_min, port_max])。
[0035]在端口塊[port_min,port_max]中為 Http、Email、Ftp、Telnet、VoIP 等重要應用預留端口塊[P1, P2],其中Pp P2分別表示預留的開始端口和結束端口。預留端口塊的方式可以按照port_min或port_max的偏移量來定義,預留端口塊的大小根據重要應用的多少來確定,端口塊和預留端口塊中的端口號可以連續也可以不連續。
[0036]如圖2A所示,用戶應用分配的端口塊以及在端口塊內設置重要應用專用端口塊,即預留端口塊,在端口塊和預留端口塊中的端口的端口號都為連續的端口號,預留端口塊設置在端口塊的中間。如圖2B所示,對于分配的固定端口塊[port_min,port_max],port_min位最小端口,port_max為最大端口。預留的端口塊在端口塊的起始段,即p^portjnin。如圖2C所示,為對于分配的固定端口塊[port_min, port_max],預留的端口塊在端口塊的末段,即 p2=port_maxo
[0037]圖3為根據本發明的地址轉換設備分配端口的方法的另一個實施例的流程圖;如圖所示:
[0038]步驟301,為用戶應用分配公有IP地址和端口塊;并在端口塊內設置重要應用專用端口塊,即為預留端口塊(在以下的描述中,預留端口塊即為重要應用專用端口塊)。
[0039]計算重要應用預留的端口數=Portjes=P2-P1+]^ port_res大小應合理設定,port_res過大會影響普通應用的體驗,port_res過小會頻繁的擠用或釋放普通應用正在使用的端口。計算普通應用的端口數:
[0040]port_other= (port_max_port_min) - (P2-P1);
[0041]其中,分配的端口塊為[port_min, port_max], P1^ p2分別表示預留的開始端口和結束端口,port_other是在預留端口沒有使用完畢的情況下普通應用可以使用的端口數。
[0042]地址轉換設備實時記錄預留端口和其他端口的使用情況,count_res表示預留端口剩余數,初始狀態count_res=port_res,每分配一個預留端口后count_res減I ;count_other表示非預留端口剩余數,初始狀態count_other=port_other,非預留端口每分配一個,count_other 減 I。
[0043]步驟302,用戶上網建立應用的session。[0044]其中,當用戶上網建立第一個應用的session時,根據session五元組的目的端口信息,判斷用戶使用的應用類型。五元組即為源IP、目的IP、源端口、目的端口、協議類型。例如,Telnet應用的端口號為23,為TCP連接,FTP應用的端口號為20、21,為TCP連接等
坐寸ο
[0045]如果應用類型是Http、Email、Ftp、Telnet、VoIP等重要應用,則分配給這個session 的端口 Portjiext=P1,同時預留端口的剩余數減 1,count_res=port_res_l。如果應用類型是普通應用,則分配給這個session的端口 port_next=port_min,同時非預留端口的剩余數減I,count_other=port_other_l。地址轉換設備為建立的session分配端口后,記錄下端口的使用情況。
[0046]步驟303,當用戶使用業務建立新的session時,根據session五元組的目的端口信息,判斷用戶使用的應用類型。
[0047]如果建立的session 是 Http、Email、Ftp(File TransferProtocol)>Telnet>VoIP(Voice over Internet Protocol)等重要應用,進入步驟304,判斷預留端口剩余數count_res的大小,如果count_res>0,表示預留端口還有空閑,進入步驟306 ;
[0048]步驟306,根據地址轉換設備保存的預留端口的使用記錄從空閑端口中選取最小的端口分配給新建立的session,則port_next=空閑端口,同時預留端口數count_res減
1
[0049]如果count_res=0,則表示預留端口使用完畢,需要從非預留端口塊中分配端口。進入步驟307 ;
[0050]步驟307,判斷非預留端口剩余數count_other的大小。如果count_other>0,表示非預留端口還有空閑,進入步驟310。
[0051]步驟310,根據地址轉換設備保存的非預留端口使用記錄從空閑端口中選取最小的端口分配給新建立的session,則port_next=空閑端口,同時非預留端口剩余數count_other 減 I。
[0052]如果count_other=0,貝U表示非預留端口使用完畢,貝U進入步驟311。
[0053]步驟311,對普通應用使用的端口進行隨機抽簽釋放,產生隨機數R=random()%port_othe;r。通過RandomO函數生成隨機數,并通過此隨機數對分配給普通應用的端口總數port_other進行求余運算生成R,則可以確保產生的隨機數R為不超過分配給普通應用的端口總數port_other的隨機數。
[0054]根據本發明的一個實施例,在端口塊和預留端口塊中端口的端口號都為連續的端 口號。如果 R〈Pfport_min,貝[I port_next=port_min+ (randomO%port_other);如果R>=p1-port_min,貝[I port_next=port_min+ (random O %port_other) +port_res (這種情況為預留端口塊設置在端口塊的中間)。通過加隨機數確定為重要應用分配的端口號。
[0055]如果建立的session是普通應用,貝U進入步驟305。
[0056]步驟305,判斷非預留端口剩余數count_other的大小,如果count_other>0,表示非預留端口有空閑,則進入步驟308.[0057]步驟308,選擇最小的空閑端口分配給新建的session,port_next=空閑端口,同時 count_other 減 I ;
[0058]如果count_other=0,貝U表示非預留端口使用完畢,進入步驟309。[0059]步驟309,本次session不能建立,用戶不能繼續使用普通應用。
[0060]用戶使用業務的session結束后,相應的端口釋放,地址轉換設備實時更新端口使用記錄,相應的count_res或count_other加I。
[0061]根據本發明的一個實施例,對于分配的固定端口塊[port_min,port_max],預留的端口塊在端口塊的起始段,即P1=Portjiiin,則用戶新建立session的端口 port_next分配如下:
[0062]在預留端口和非預留端口都分配完的情況下,如果session的應用是普通應用,則session不能建立;如果session的應用是重要應用,則從非預留端口塊中釋放端口 P2+ (randomO %port_other),將此端口分配給新建立的session, port_next=p2+ (random()%port_other),通過加隨機數確定為重要應用分配的端口號。其中,在端口塊和預留端口塊中端口的端口號都為連續的端口號。
[0063]對于分配的固定端口塊[port_min, port_max],預留的端口塊在端口的末段,即p2=port_max,則用戶新建立session的端口 port_next分配如下:
[0064]在預留端口和其他端口都分配完的情況下,如果session的應用是普通應用,則session不能建立;如果session的應用是重要應用,則從非預留端口塊中釋放端口port_min+ (randomO%port_other),將此端口分配給新建立的 session, port_next=port_min+ (randomO%port_other)通過加隨機數確定為重要應用分配的端口號。其中,在端口塊和預留端口塊中端口的端口號都為連續的端口號。
[0065]目前通常有兩種方法進行端口的分配。方法1:地址轉換設備按每session分配端口,多個用戶的session按照空閑端口的大小順序分配可用端口,用戶的應用同等對待。這種方式多個用戶可以復用可分配的端口塊,端口資源的使用效率較高,但每session的映射關系需要實時傳送給溯源系統,且存在端口分配完畢后多個用戶都不能再使用新的應用的問題。在運營商中大規模部署時,地址轉換設備會生成大量的log記錄信息,并由于溯源的需要上傳到log服務器,造成網絡資源浪費,且基于UDP傳輸機制的Syslog協議不能確保log信息的正確上送。
[0066]方法2:地址轉換設備按每用戶分配固定端口塊,用戶的session按照端口塊的空閑端口的大小順序分配可用端口,用戶的應用同等對待。這種方式可以較少或消除地址轉換設備和溯源系統的交互信息量,但用戶的端口塊內的端口分配完畢后用戶因獲取不到端口資源無法繼續使用新的應用。
[0067]本發明的地址轉換設備分配端口的方法對比方法術1:用戶session分配端口的情況不需實時傳送給溯源系統,用戶的不同應用差異化分配端口,可用端口全部分配完畢后,用戶新的重要業務還可以繼續使用。本發明的地址轉換設備分配端口的方法對比方法2:在每用戶分配固定端口塊的情況下,用戶的不同應用差異化分配端口,可用端口全部分配完畢,用戶還可以繼續使用新的重要應用。
[0068]圖4為根據本發明的地址轉換設備的一個實施例的示意圖。如圖4所示,地址轉換NAT設備41包括:地址和端口分配裝置411和412。地址和端口分配裝置411為用戶應用使用的私有IP地址分配公有IP地址和端口塊;并且,在端口塊內設置重要應用專用端口塊;地址轉換裝置412將私有IP地址轉換為公有IP地址加端口塊中的端口號的形式;當用戶應用屬于重要應用時,在對私有IP地址進行轉換時,從重要應用專用端口塊中獲取端口 ;用戶應用的類型分為普通應用和重要應用。
[0069]根據本發明的一個實施例,當重要應用專用端口塊中的端口使用完時,則地址轉換裝置412為重要應用使用的私有IP地址分配端口塊中、不屬于重要應用專用端口塊的端口號。
[0070]當用戶應用建立新的會話session時,地址轉換裝置412根據session的目的端口信息,判斷用戶應用的類型;如果session為重要應用,判斷重要應用專用端口塊剩余端口數,如果剩余端口數大于0,則地址轉換裝置412從重要應用專用端口塊中選取最小的端口號分配給session;如果剩余端口數等于0,進一步判斷端口塊中不屬于重要應用專用端口塊的端口數的大小,如果端口數大于0,則地址轉換裝置412分配端口塊中不屬于重要應用專用端口塊的最小的端口號給session;如果端口數等于0,對普通應用使用的端口進行隨機釋放,則地址轉換裝置412將此被釋放的端口號分配給session。
[0071]如果session為普通應用,地址轉換裝置412判斷端口塊中不屬于重要應用專用端口塊的端口數的大小,如果端口數大于0,則地址轉換裝置412分配端口塊中不屬于重要應用專用端口塊的最小的端口號給session ;如果端口數等于0,則地址轉換裝置412不為session分配端口號。
[0072]重要應用包括:Http應用、Email應用、Ftp應用、Telnet應用或VoIP應用等等。
[0073]本發明的地址轉換設備分配端口的方法和地址轉換設備,提供了一種區分不同應用差異化分配端口的方法,在用戶的端口塊內的端口分配完畢后,用戶后續的重要應用仍然可以獲取端口資源從而不影響用戶的應用體驗,從而提高用戶的應用體驗。
[0074]可能以許多方式來實現本發明的方法和系統。例如,可通過軟件、硬件、固件或者軟件、硬件、固件的任何組合來實現本發明的方法和系統。用于方法的步驟的上述順序僅是為了進行說明,本發明的方法的步驟不限于以上具體描述的順序,除非以其它方式特別說明。此外,在一些實施例中,還可將本發明實施為記錄在記錄介質中的程序,這些程序包括用于實現根據本發明的方法的機器可讀指令。因而,本發明還覆蓋存儲用于執行根據本發明的方法的程序的記錄介質。
[0075]本發明的描述是為了示例和描述起見而給出的,而并不是無遺漏的或者將本發明限于所公開的形式。很多修改和變化對于本領域的普通技術人員而言是顯然的。選擇和描述實施例是為了更好說明本發明的原理和實際應用,并且使本領域的普通技術人員能夠理解本發明從而設計適于特定用途的帶有各種修改的各種實施例。
【權利要求】
1.一種地址轉換NAT設備分配端口的方法,其特征在于,包括:
NAT設備為用戶應用使用的私有IP地址分配公有IP地址和端口塊;所述NAT設備將私有IP地址轉換為所述公有IP地址加所述端口塊中的端口號的形式; 所述NAT設備在所述端口塊內設置重要應用專用端口塊;當用戶應用屬于重要應用時,所述NAT設備在對私有IP地址進行轉換時,從所述重要應用專用端口塊中獲取端口 ; 其中,所述用戶應用的類型分為普通應用和重要應用。
2.如權利要求1所述的方法,其特征在于: 當重要應用專用端口塊中的端口使用完時,則所述NAT設備為重要應用使用的私有IP地址分配所述端口塊中、不屬于所述重要應用專用端口塊的端口號。
3.如權利要求2所述的方法,其特征在于: 當用戶應用建立新的會話session時,根據所述session的目的端口信息,判斷所述用戶應用的類型; 如果所述session為重要應用,判斷所述重要應用專用端口塊剩余的端口數,如果剩余端口數大于0,則所述NAT設備從所述重要應用專用端口塊中選取最小的端口號分配給所述 session ; 如果剩余端口數等于0,進一步判斷所述端口塊中、不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述NAT設備分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session;如果端口數等于0,對普通應用使用的端口進行隨機釋放,則所述NAT設備將此被釋放的端口號分配給所述session。
4.如權利要求1所述的方法,其特征在于: 如果所述session為普通應用,判斷所述端口塊中不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述NAT設備分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session ;如果端口數等于O,則不為所述session分配端口號。
5.如權利要求1所述的方法,其特征在于: 所述重要應用包括:超文本傳送協議Http應用、電子郵件Email應用、Ftp應用、Telnet應用或VoIP應用。
6.一種地址轉換NAT設備,其特征在于,包括: 地址和端口分配裝置,用于為用戶應用使用的私有IP地址分配公有IP地址和端口塊;并且,在所述端口塊內設置重要應用專用端口塊; 地址轉換裝置,用于將私有IP地址轉換為所述公有IP地址加所述端口塊中的端口號的形式;當用戶應用屬于重要應用時,在對私有IP地址進行轉換時,從所述重要應用專用端口塊中獲取端口; 其中,所述用戶應用的類型分為普通應用和重要應用。
7.如權利要求6所述的設備,其特征在于: 當重要應用專用端口塊中的端口使用完時,則所述地址轉換裝置為重要應用使用的私有IP地址分配所述端口塊中、不屬于所述重要應用專用端口塊的端口號。
8.如權利要求7所述的設置,其特征在于: 當用戶應用建立新的會話session時,所述地址轉換裝置根據所述session的目的端口信息,判斷所述用戶應用的類型; 如果所述session為重要應用,判斷所述重要應用專用端口塊剩余端口數,如果剩余端口數大于0,則所述地址轉換裝置從所述重要應用專用端口塊中選取最小的端口號分配給所述session ; 如果剩余端口數等于0,進一步判斷所述端口塊中不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述地址轉換裝置分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session;如果端口數等于0,對普通應用使用的端口進行隨機釋放,則所述地址轉換裝置將此被釋放的端口號分配給所述session。
9.如權利要求6所述的設備,其特征在于: 如果所述session為普通應用,所述地址轉換裝置判斷所述端口塊中不屬于所述重要應用專用端口塊的端口數的大小,如果端口數大于0,則所述地址轉換裝置分配所述端口塊中不屬于所述重要應用專用端口塊的最小的端口號給所述session;如果端口數等于0,則所述地址轉換裝置不為所述session分配端口號。
10.如權利要求6 所述的設備,其特征在于: 所述重要應用包括=Http應用、EmaiI應用、Ftp應用、Telnet應用或VoIP應用。
【文檔編號】H04L29/12GK103701941SQ201210366609
【公開日】2014年4月2日 申請日期:2012年9月28日 優先權日:2012年9月28日
【發明者】郭泓偉, 楊國良, 鄒易風, 伍佑明, 李忠超, 張國賢, 王潔, 郭 東, 張曉宇, 王吉順, 徐良紅 申請人:中國電信股份有限公司