两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的方法和系統(tǒng)的制作方法

文檔序號:7700681閱讀:236來源:國知局
專利名稱:具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的方法和系統(tǒng)的制作方法
技術領域
本發(fā)明涉及移動通信領域,尤其涉及具有IPv4應用的主機通過IPv6網(wǎng)絡進行通 信的技術。
背景技術
隨著全球IPv4 (Internet Protocol version 4,第4版本互聯(lián)網(wǎng)協(xié)議)地址的耗 盡和業(yè)務對終端“永遠在線”的要求,IPv6 (Internet Protocol version 6,第6版本互聯(lián)網(wǎng) 協(xié)議)技術的部署將成為必然。為了逐步引入IPv6網(wǎng)絡的概念,IPv6網(wǎng)絡以及IPv4/IPv6 雙棧網(wǎng)絡的建設將成為IPv6技術部署的第一步。然而,目前的主機具有大量的IPv4應用, IPv6應用的數(shù)量與之相比卻微乎其微,因此在IPv6過渡方案初期如何解決IPv6網(wǎng)絡中主 機間IPv4應用的訪問與互通將成為IPv6過渡中需要考慮的一個重要問題。在現(xiàn)有技術中,SIIT算法提供了 IPv6應用(IPv6 Application)通過IPv6網(wǎng)絡 和IPv4網(wǎng)絡與IPv4節(jié)點通信的方法。該方法中在數(shù)據(jù)包進出IPv6網(wǎng)絡的網(wǎng)絡拓撲路徑 上設置有SIIT翻譯器,當網(wǎng)絡中出現(xiàn)大量訪問外部IPv4應用(IPv4 Application)的數(shù)據(jù) 流時,SIIT翻譯器需要對每個數(shù)據(jù)流進行翻譯并保存其狀態(tài),這使得網(wǎng)絡系統(tǒng)的處理負擔 很大,容易造成系統(tǒng)中單點失效。此外,現(xiàn)有技術的BIS算法提供了一種IPv4應用訪問IPv6網(wǎng)絡中的IPv6節(jié)點的 方法。在該方法中,在IPv4應用的主機中添加翻譯模塊,用于監(jiān)測TCP/IP模塊與網(wǎng)卡驅(qū)動 程序之間的數(shù)據(jù)流,并進行相應IPv4與IPv6數(shù)據(jù)包之間的相互翻譯。當與其他IPv6主機 進行通信時,在這臺主機內(nèi)部給對應IPv6主機分配一些IPv4地址,這些地址只在這臺主機 內(nèi)部使用。而且,這種分配過程是通過DNS協(xié)議自動來完成的。這樣,IPv4應用的主機可 以通過翻譯模塊將發(fā)送給對端IPv6節(jié)點的數(shù)據(jù)包轉(zhuǎn)換為IPv6數(shù)據(jù)包,或者將接收的IPv6 數(shù)據(jù)包轉(zhuǎn)換為IPv4數(shù)據(jù)包傳遞給IPv4應用,實現(xiàn)與IPv6網(wǎng)絡中IPv6節(jié)點的通信。但是, 在實際應用的場景中,有可能出現(xiàn)IPv4應用需要通過IPv6網(wǎng)絡訪問另一個IPv4應用,那 么BIS算法并沒有針對這種場景給出解決方案?,F(xiàn)有技術的另一個方案中,提出在IPv4和IPv6網(wǎng)絡邊緣上部署邊界轉(zhuǎn)換網(wǎng)關設 備,邊界轉(zhuǎn)換網(wǎng)關設備將從IPv6網(wǎng)絡發(fā)送到IPv4網(wǎng)絡的數(shù)據(jù)包轉(zhuǎn)換為IPv4數(shù)據(jù)包,將從 IPv4網(wǎng)絡發(fā)送到IPv6網(wǎng)絡的數(shù)據(jù)包轉(zhuǎn)換為IPv6數(shù)據(jù)包。那么,結(jié)合該方案與上述的BIS 算法則可以解決IPv4應用通過IPv6網(wǎng)絡訪問另一個IPv4應用的問題。但是,由于需要在 IPv4和IPv6網(wǎng)絡邊緣上部署專門的邊界轉(zhuǎn)換網(wǎng)關設備來實現(xiàn)數(shù)據(jù)包的轉(zhuǎn)換,導致網(wǎng)絡系 統(tǒng)的處理負擔很大,容易造成單點失效的問題。綜上所述,現(xiàn)有技術所提供的IPv4應用通過IPv6網(wǎng)絡訪問另一個IPv4應用的方 法都需要在IPv4和IPv6網(wǎng)絡邊緣上部署專門的設備(比如上述的SIIT翻譯器或者邊界 轉(zhuǎn)換網(wǎng)關設備)進行地址翻譯以及充當應用層網(wǎng)關(ALG)的應用信息轉(zhuǎn)換功能(即應用層 網(wǎng)關功能)。尤其是應用層網(wǎng)關功能的添加已被實踐證明將會給網(wǎng)絡系統(tǒng)增加較大的處理負擔,容易導致單點失效的問題。

發(fā)明內(nèi)容
本發(fā)明實施例提供了一種具有IPv4的主機及其通過IPv6網(wǎng)絡進行通信的方法和 系統(tǒng),用以實現(xiàn)IPv4應用通過IPv6網(wǎng)絡訪問另一個IPv4應用時,減小網(wǎng)絡系統(tǒng)的處理負擔。一種具有IP v4應用的主機通過IP v6網(wǎng)絡進行通信的方法,包括所述主機根據(jù)IPv4應用向通信對端發(fā)送的信息生成IPv4數(shù)據(jù)包;并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;NAT設備通過所述IPv6網(wǎng)絡接收到所述主機發(fā)送的數(shù)據(jù)包;并將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過IPv4網(wǎng)絡轉(zhuǎn)發(fā);所述通信對端通過所述IPv4網(wǎng)絡接收到所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包,解析該數(shù)據(jù) 包獲取所述主機發(fā)送的信息。一種具有IP v4應用的主機通過IP v6網(wǎng)絡進行通信的系統(tǒng),包括第一主機,用于根據(jù)本機的IPv4應用向第二主機發(fā)送的信息生成IPv4數(shù)據(jù)包;并 將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;NAT設備,用于通過所述IPv6網(wǎng)絡接收所述第一主機發(fā)送的數(shù)據(jù)包;并將接收的 數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過IPv4網(wǎng)絡轉(zhuǎn)發(fā);第二主機,用于通過所述IPv4網(wǎng)絡接收所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包,并解析該數(shù) 據(jù)包獲取所述第一主機發(fā)送的信息。一種具有IP v4應用的主機通過IPv6網(wǎng)絡進行通信的方法,包括第一主機根據(jù)本機的IPv4應用向第二主機發(fā)送的信息生成IPv4數(shù)據(jù)包;并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;所述第二主機通過所述IPv6網(wǎng)絡接收到所述第一主機發(fā)送的數(shù)據(jù)包后,將接收 的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包,并解析該IPv4數(shù)據(jù)包獲取 所述第一主機的IPv4應用發(fā)送的信息。一種具有IP v4應用的主機通過IP v6網(wǎng)絡進行通信的系統(tǒng),包括第一主機,用于根據(jù)本機的IPv4應用向第二主機發(fā)送的信息生成IPv4數(shù)據(jù)包;并 將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;第二主機,用于通過所述IPv6網(wǎng)絡接收到所述第一主機發(fā)送的數(shù)據(jù)包后,將接收 的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包,并解析該IPv4數(shù)據(jù)包獲取 所述第一主機的IPv4應用發(fā)送的信息。一種基于IPv4應用的主機,包括數(shù)據(jù)包生成模塊,用于根據(jù)IPv4應用向通信對端發(fā)送的信息生成IPv4數(shù)據(jù)包;第一包頭轉(zhuǎn)換模塊,用于將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包 頭;數(shù)據(jù)包發(fā)送模塊,用于將所述第一包頭轉(zhuǎn)換模塊轉(zhuǎn)換后的數(shù)據(jù)包通過IPv6網(wǎng)絡 發(fā)送。本發(fā)明實施例由于主機將IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭,使得該數(shù)據(jù)包可以通過IPv6網(wǎng)絡傳輸,并且不必涉及對傳輸層頭和數(shù)據(jù)部分進行轉(zhuǎn)換,大大減少 了系統(tǒng)的處理負擔。進一步,由于在IPv6與IPv4網(wǎng)絡的邊界處設置的NAT設備將數(shù)據(jù)包的包頭又轉(zhuǎn) 換回IPv4數(shù)據(jù)包的包頭,從而形成完整的IPv4數(shù)據(jù)包,使之可以通過IPv4網(wǎng)絡發(fā)送到 IPv4網(wǎng)絡中的IPv4節(jié)點或者具有IPv4應用的主機。而NAT設備僅是對數(shù)據(jù)包的包頭部分 進行轉(zhuǎn)換,而不必涉及對傳輸層頭和數(shù)據(jù)部分進行轉(zhuǎn)換,大大減少了系統(tǒng)的處理負擔,使得 單點失效發(fā)生的概率下降。


圖1為本發(fā)明實施例的具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的系統(tǒng)示意 圖;圖2a、2b為本發(fā)明實施例的具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的方法 流程示意圖;圖3為本發(fā)明實施例的具有IPv4應用的主機通過IPv6網(wǎng)絡獲取IPv4網(wǎng)絡中DNS 服務器的域名服務的方法流程示意圖;圖4為本發(fā)明實施例的具有IPv4應用的主機的內(nèi)部結(jié)構(gòu)框圖。
具體實施例方式本發(fā)明實施例在具有IPv4應用的主機中將IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù) 包的包頭,對于數(shù)據(jù)包的傳輸層頭和數(shù)據(jù)部分則不進行轉(zhuǎn)換;在IPv6和IPv4網(wǎng)絡邊緣上的 NAT設備在通過IPv6網(wǎng)絡接收到數(shù)據(jù)包后,將該數(shù)據(jù)包的包頭換成IPv4數(shù)據(jù)包頭后即得到 IPv4數(shù)據(jù)包,并通過IPv4網(wǎng)絡向通信對端發(fā)送IPv4數(shù)據(jù)包。這樣,設置在IPv6和IPv4網(wǎng) 絡邊緣上的NAT設備不必對整個數(shù)據(jù)包(包括傳輸層頭和數(shù)據(jù)部分)進行轉(zhuǎn)換,只需對數(shù) 據(jù)包的包頭進行轉(zhuǎn)換,減小了網(wǎng)絡系統(tǒng)的處理負擔,使得單點失效發(fā)生的概率大大下降。反之亦然,NAT設備在通過IPv4網(wǎng)絡接收到數(shù)據(jù)包后,將該數(shù)據(jù)包的包頭換成 IPv6數(shù)據(jù)包頭后,通過IPv6網(wǎng)絡發(fā)送給具有IPv4應用的主機,該主機將接收的數(shù)據(jù)包的包 頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后即得到IPv4數(shù)據(jù)包傳遞到IPv4應用進行處理。下面結(jié)合附圖詳細說明本發(fā)明實施例的具體技術方案。在如圖1所示的具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的系統(tǒng)中,包括與 IPv6網(wǎng)絡相連的主機A101、NAT設備102、與IPv4網(wǎng)絡相連的主機B103。其中,主機AlOl中具有IPv4應用,當然主機AlOl中也可以具有IPv6應用。主機 AlOl與IPv6網(wǎng)絡相連,通過IPv6網(wǎng)絡發(fā)送或接收數(shù)據(jù)包。NAT設備102設置于IPv6網(wǎng)絡與IPv4網(wǎng)絡的邊界處,用以將IPv6網(wǎng)絡的數(shù)據(jù)包 向IPv4網(wǎng)絡轉(zhuǎn)發(fā),或者將IPv4網(wǎng)絡的數(shù)據(jù)包向IPv6網(wǎng)絡轉(zhuǎn)發(fā)。主機B103為具有IPv4應用的主機,其可以純IPv4節(jié)點,也可以是具有IPv4/IPv6 的雙棧節(jié)點。主機B103通過IPv4網(wǎng)絡接收IPv4數(shù)據(jù)包、并通過IPv4網(wǎng)絡發(fā)送IPv4數(shù)據(jù)包。主機AlOl通過IPv6網(wǎng)絡與主機B103進行通信的過程如圖2所示,包括如下步 驟
S201、主機AlOl根據(jù)IPv4應用發(fā)送的信息生成IPv4數(shù)據(jù)包。主機AlOl根據(jù)IPv4應用需要發(fā)送給對端通信設備主機B103的信息,調(diào)用套接字 API (Application Programming Interface,應用編程接口)函數(shù)(SocketAPI 函數(shù)),并根 據(jù) TCP (Transmission Control Protocol,傳輸控制協(xié)議)/UDP (User Datagram Protocol, 用戶數(shù)據(jù)報協(xié)議)/IP (Internet Protocol,互聯(lián)網(wǎng)協(xié)議)v4協(xié)議生成IPv4數(shù)據(jù)包。S202、主機AlOl將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過 IPv6網(wǎng)絡發(fā)送。為了能夠使生成的數(shù)據(jù)包能夠在IPv6網(wǎng)絡中傳輸,主機AlOl將生成的IPv4數(shù)據(jù) 包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭。具體為,主機AlOl將生成的IPv4數(shù)據(jù)包包頭的格式 轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭格式,并且將包頭中的本機和通信對端(主機B103)的IPv4地 址轉(zhuǎn)換為IPv6地址,而對于數(shù)據(jù)包的傳輸層頭和數(shù)據(jù)部分都不進行轉(zhuǎn)換。地址轉(zhuǎn)換的具體方法為在主機AlOl中維護了一個保存了 IPv4地址與IPv6地址 對應關系的映射表;IPv4到IPv6地址間的轉(zhuǎn)換分別采用了無狀態(tài)的址翻譯方式,實現(xiàn)主機 向IPv6網(wǎng)絡發(fā)送數(shù)據(jù)包的封裝。其具體方法是在IPv4地址前增加96位的IPv6前綴,形 成對應的IPv6地址,該IPv6前綴屬于周知前綴(well-know prefix),可由網(wǎng)絡運營商進 行指定。根據(jù)該對應關系表將包頭中的本機和通信對端的IPv4地址轉(zhuǎn)換為對應的IPv6地 址。S203、NAT (Network Address Translation,網(wǎng)絡地址翻譯)設備 102(具體可以是 NAT64設備)接收主機AlOl發(fā)送的數(shù)據(jù)包。NAT設備102通過IPv6網(wǎng)絡接收到主機AlOl發(fā)送的數(shù)據(jù)包。S204、NAT設備102將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過 IPv4網(wǎng)絡轉(zhuǎn)發(fā)該數(shù)據(jù)包。在NAT設備102中將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭時,將IPv6 的前綴去掉,即可得到對應的IPv4地址。NAT設備102在將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過IPv4網(wǎng) 絡轉(zhuǎn)發(fā)該數(shù)據(jù)包。也就是說,NAT設備102不用對整個數(shù)據(jù)包進行轉(zhuǎn)換,不必涉及對數(shù)據(jù)包 的傳輸層頭和數(shù)據(jù)部分進行轉(zhuǎn)換,其只要對包頭部分進行轉(zhuǎn)換就可以得到IPv4數(shù)據(jù)包,從 而通過IPv4網(wǎng)絡轉(zhuǎn)發(fā)該IPv4數(shù)據(jù)包。這樣,相比于現(xiàn)有技術中設置于IPv6和IPv4網(wǎng)絡 邊界的設備,對數(shù)據(jù)包的解析、轉(zhuǎn)換工作大大減少了,減小了系統(tǒng)的處理負擔,從而可以盡 量避免單點失效。S205、主機B103通過IPv4網(wǎng)絡接收到NAT設備102轉(zhuǎn)發(fā)的數(shù)據(jù)包。主機B103通過IPv4網(wǎng)絡接收到NAT設備102轉(zhuǎn)發(fā)的數(shù)據(jù)包后,對IPv4數(shù)據(jù)包進 行解析獲得信息,并將獲得的信息傳送到主機B103的IPv4應用,主機B103的IPv4應用對 接收的信息進行處理,或者返回信息。之后,主機B103根據(jù)IPv4應用返回的信息生成IPv4數(shù)據(jù)包,并向主機AlOl返回 數(shù)據(jù)包的過程與上述過程類似,為其逆過程S206、主機B103通過IPv4網(wǎng)絡向主機AlOl返回IPv4數(shù)據(jù)包。S207、NAT設備102將從IPv4網(wǎng)絡接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包 頭后,通過IPv6網(wǎng)絡轉(zhuǎn)發(fā)該數(shù)據(jù)包。
具體為,NAT設備102將接收的主機B103通過IPv4網(wǎng)絡發(fā)送的數(shù)據(jù)包的包頭轉(zhuǎn)換 為IPv6數(shù)據(jù)包的包頭。在NAT設備中可存儲預先規(guī)定的IPv6前綴信息(即周知前綴),在 IPv4地址的基礎上增加周知前綴從而得到對應的IPv6地址。在NAT設備中存儲的映射表 中保存有IPv6地址和IPv4地址的對應關系。NAT設備102根據(jù)存儲的映射表將包頭中的 IPv4地址換為對應的IPv6地址;之后,NAT設備102通過IPv6網(wǎng)絡轉(zhuǎn)發(fā)轉(zhuǎn)換后的數(shù)據(jù)包。S208、主機AlOl通過IPv6網(wǎng)絡接收到數(shù)據(jù)包后,將數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù) 據(jù)包的包頭。主機AlOl通過IPv6網(wǎng)絡接收到數(shù)據(jù)包后,將數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的 包頭,從而獲得IPv4數(shù)據(jù)包。在包頭轉(zhuǎn)換過程中,主機AlOl包頭中的IPv6地址的前綴去 掉從而得到對應的IPv4地址。S209、主機AlOl將獲得的IPv4數(shù)據(jù)包進行解析后得到的信息傳遞到IPv4應用。主機AlOl對獲得的IPv4數(shù)據(jù)包進行解析得到相關信息,并將得到的信息傳送到 IPv4應用進行處理。由此,實現(xiàn)兩個IPv4應用通過IPv6網(wǎng)絡的雙向通信。顯然,應用上述方法也可以實現(xiàn)兩個具有IPv4應用的主機直接通過IPv6網(wǎng)絡進 行通信,假設主機AlOl直接通過IPv6網(wǎng)絡與具有IPv4應用的主機——主機C105進行通 信,其具體步驟如圖2b所示,包括如下步驟S221、主機AlOl根據(jù)IPv4應用發(fā)送的信息生成IPv4數(shù)據(jù)包。主機AlOl根據(jù)IPv4應用需要發(fā)送給對端通信設備主機C105的信息,調(diào)用Socket API函數(shù),并根據(jù)TCP/UDP/IPv4協(xié)議生成IPv4數(shù)據(jù)包。S222、主機AlOl將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過 IPv6網(wǎng)絡發(fā)送。為了能夠使生成的數(shù)據(jù)包能夠在IPv6網(wǎng)絡中傳輸,主機AlOl將生成的IPv4數(shù)據(jù) 包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭。具體為,主機AlOl將生成的IPv4數(shù)據(jù)包包頭的格式 轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭格式,并且將包頭中的本機和通信對端(主機C105)的IPv4地 址轉(zhuǎn)換為IPv6地址,而對于數(shù)據(jù)包的傳輸層頭和數(shù)據(jù)部分都不進行轉(zhuǎn)換。轉(zhuǎn)換方法與上述 步驟S202所述,此處不再贅述。S223、主機C105通過IPv6網(wǎng)絡接收到主機AlOl發(fā)送的數(shù)據(jù)包后,將接收的數(shù)據(jù) 包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包。主機C105將接收的數(shù)據(jù)包進行包頭轉(zhuǎn)換的方法同上述步驟S204中NAT設備102 轉(zhuǎn)換的方法,此處不再贅述。S224、主機C105得到IPv4數(shù)據(jù)包后,可以對IPv4數(shù)據(jù)包進行解析獲取信息。主機C105可以根據(jù)TCP/UDP/IPv4協(xié)議,并調(diào)用相關的SocketAPI函數(shù),對IPv4 數(shù)據(jù)包進行解析,從而獲取信息發(fā)送給本機的IPv4應用。S225、主機C105的IPv4應用也可以向主機AlOl的IPv4應用返回信息。S226、主機C105根據(jù)IPv4應用返回的信息生成IPv4數(shù)據(jù)包。S227、主機C105將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過 IPv6網(wǎng)絡發(fā)送。主機C105將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭的方法 與主機AlOl相同,此處不再贅述。S228、主機AlOl通過IPv6網(wǎng)絡接收到主機C105返回的數(shù)據(jù)包后,將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包。S229、主機AlOl得到IPv4數(shù)據(jù)包后,對IPv4數(shù)據(jù)包進行解析獲取返回信息,將返 回信息傳遞給IPv4應用。此外,在現(xiàn)有技術中也沒提出具有IPv4應用的主機如何通過IPv6網(wǎng)絡獲取IPv4 網(wǎng)絡中DNS(Domain Name System,域名系統(tǒng))服務器的域名服務的解決方案,而本發(fā)明實施 例進一步提供了具有IPv4應用的主機通過IPv6網(wǎng)絡向IPv4網(wǎng)絡中DNS服務器發(fā)送DNS請 求獲取對端通信設備IP地址的具體方法,在執(zhí)行上述的通信過程之前,可以通過如圖3所 示的流程來獲取對端通信設備的IP地址,具體包括如下步驟S301、主機AlOl的IPv4應用發(fā)起DNS請求。假設主機AlOl的IPv4應用在與主機B103通信前,需要獲取主機B103的IP地址, 則主機AlOl的IPv4應用根據(jù)該需求發(fā)起DNS請求。S302、主機AlOl根據(jù)IPv4應用發(fā)起的DNS請求生成基于IPv4的DNS請求報文。S303、主機AlOl將生成的DNS請求報文的數(shù)據(jù)包包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包包頭后, 通過IPv6網(wǎng)絡發(fā)送。包頭的轉(zhuǎn)換方法與上述步驟S202相同,此處不再贅述。由于,主機AlOl僅是將包頭部分進行轉(zhuǎn)換而沒有對數(shù)據(jù)部分進行轉(zhuǎn)換,因此,轉(zhuǎn) 換后的DNS請求報文依然是A類型的DNS請求報文,而不是IPv6網(wǎng)絡中通常傳輸?shù)幕?IPv6的AAAA類型的DNS請求報文。S304、NAT設備102接收主機AlOl發(fā)送的DNS請求報文后,將接收的DNS請求報 文的數(shù)據(jù)包包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭。包頭的具體轉(zhuǎn)換方法與上述步驟S204相同,此處不再贅述。在NAT設備102對 DNS請求報文進行數(shù)據(jù)包包頭轉(zhuǎn)換后,DNS請求報文仍是A類型的DNS請求報文。S305、NAT設備102將轉(zhuǎn)換后的報文通過IPv4網(wǎng)絡發(fā)送到DNS服務器104。S306、DNS服務器104返回包含主機B103的IPv4地址的DNS回復信息。S307、NAT設備102對DNS回復信息的數(shù)據(jù)包包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包包頭。具體 的轉(zhuǎn)換方法與上述步驟S207相同,此處不再贅述。S308、NAT設備102將經(jīng)過包頭轉(zhuǎn)換的DNS回復信息通過IPv6網(wǎng)絡發(fā)送到主機 A101。S309、主機AlOl通過IPv6網(wǎng)絡接收到DNS回復信息后,將接收的DNS回復信息的 數(shù)據(jù)包包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包包頭,得到基于IPv4的DNS回復信息。S310、主機AlOl對基于IPv4的DNS回復信息進行解析后將DNS回復傳送給IPv4 應用。IPv4應用可以根據(jù)DNS回復中的通信對端(主機B103)的IPv4地址向通信對端發(fā) i^fn 息 ο本領域技術人員可以理解,雖然上述說明中,為便于理解,對方法的步驟采用了順 序性描述,但是應當指出,對于上述步驟的順序并不作嚴格限制。上述主機AlOl中的內(nèi)部框圖,如圖4所示,包括數(shù)據(jù)包生成模塊401、第一包頭 轉(zhuǎn)換模塊402、數(shù)據(jù)包發(fā)送模塊403。數(shù)據(jù)包生成模塊401用于根據(jù)主機AlOl的IPv4應用向通信對端發(fā)送的信息生成 IPv4數(shù)據(jù)包;第一包頭轉(zhuǎn)換模塊402用于將數(shù)據(jù)包生成模塊401生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭;數(shù)據(jù)包發(fā)送模塊403用于將第一包頭轉(zhuǎn)換模塊402轉(zhuǎn)換后的數(shù)據(jù)包通過IPv6網(wǎng) 絡發(fā)送。主機AlOl還可以包括數(shù)據(jù)包接收模塊404、第二包頭轉(zhuǎn)換模塊405、數(shù)據(jù)包解析 模塊406。數(shù)據(jù)包接收模塊404用于通過所述IPv6網(wǎng)絡接收到通信對端返回的數(shù)據(jù)包;該返 回的數(shù)據(jù)包具體是通信對端通過IPv4網(wǎng)絡返回的、并經(jīng)過NAT設備102進行包頭轉(zhuǎn)換的數(shù) 據(jù)包(即將數(shù)據(jù)包包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包包頭的數(shù)據(jù)包)。第二包頭轉(zhuǎn)換模塊405用于將數(shù)據(jù)包接收模塊404接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為 IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包;數(shù)據(jù)包解析模塊406用于解析第二包頭轉(zhuǎn)換模塊405得到的IPv4數(shù)據(jù)包,獲取所 述通信對端返回的信息。上述的數(shù)據(jù)包生成模塊401以及數(shù)據(jù)包解析模塊406具體是調(diào)用SocketAPI函 數(shù),并根據(jù)TCP/UDP/IPv4協(xié)議生成或解析數(shù)據(jù)包的;第一包頭轉(zhuǎn)換模塊402、第二包頭轉(zhuǎn)換 模塊405進行包頭轉(zhuǎn)換的方法與上述方法步驟中介紹的相同,此處不再贅述。本發(fā)明實施例由于主機將IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭,使得該 數(shù)據(jù)包可以通過IPv6網(wǎng)絡傳輸,并且不必涉及對傳輸層頭和數(shù)據(jù)部分進行轉(zhuǎn)換,大大減少 了系統(tǒng)的處理負擔。進一步,由于在IPv6與IPv4網(wǎng)絡的邊界處設置的NAT設備將數(shù)據(jù)包的包頭又轉(zhuǎn) 換回IPv4數(shù)據(jù)包的包頭,從而形成完整的IPv4數(shù)據(jù)包,使之可以通過IPv4網(wǎng)絡發(fā)送到 IPv4網(wǎng)絡中的IPv4節(jié)點或者具有IPv4應用的主機。而NAT設備僅是對數(shù)據(jù)包的包頭部分 進行轉(zhuǎn)換,而不必涉及對傳輸層頭和數(shù)據(jù)部分進行轉(zhuǎn)換,大大減少了系統(tǒng)的處理負擔,使得 單點失效發(fā)生的概率下降。并且,本發(fā)明實施例還提供了 IPv4應用通過IPv6網(wǎng)絡獲取IPv4網(wǎng)絡中DNS服務 器的域名服務的方法。本領域普通技術人員可以理解實現(xiàn)上述實施例方法中的全部或部分步驟是可以 通過程序來指令相關的硬件來完成,該程序可以存儲于一計算機可讀取存儲介質(zhì)中,如 ROM/RAM、磁碟、光盤等。還可以理解的是,附圖或?qū)嵤├兴镜难b置結(jié)構(gòu)僅僅是示意性的,表示邏輯結(jié) 構(gòu)。其中作為分離部件顯示的模塊可能是或者可能不是物理上分開的,作為模塊顯示的部 件可能是或者可能不是物理模塊。以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人 員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應 視為本發(fā)明的保護范圍。
權(quán)利要求
一種具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的方法,其特征在于,包括所述主機根據(jù)第4版本互聯(lián)網(wǎng)協(xié)議IPv4應用向通信對端發(fā)送的信息生成IPv4數(shù)據(jù)包;并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為第6版本互聯(lián)網(wǎng)協(xié)議IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;網(wǎng)絡地址翻譯NAT設備通過所述IPv6網(wǎng)絡接收到所述主機發(fā)送的數(shù)據(jù)包;并將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過IPv4網(wǎng)絡轉(zhuǎn)發(fā);所述通信對端通過所述IPv4網(wǎng)絡接收到所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包,解析該數(shù)據(jù)包獲取所述主機發(fā)送的信息。
2.如權(quán)利要求1所述的方法,其特征在于,在所述通信對端通過所述IPv4網(wǎng)絡接收到 所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包后,還包括所述通信對端通過IPv4網(wǎng)絡向所述主機返回IPv4數(shù)據(jù)包;所述NAT設備通過所述IPv4網(wǎng)絡接收到返回的IPv4數(shù)據(jù)包后,將該數(shù)據(jù)包的包頭轉(zhuǎn) 換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡轉(zhuǎn)發(fā);所述主機通過所述IPv6網(wǎng)絡接收到所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包后,將接收的數(shù)據(jù)包的 包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后得到IPv4數(shù)據(jù)包,解析該IPv4數(shù)據(jù)包獲取所述通信對端 返回的信息。
3.如權(quán)利要求1所述的方法,其特征在于,在所述主機根據(jù)IPv4應用向通信對端發(fā)送 的信息生成IPv4數(shù)據(jù)包之前,還包括所述主機的IPv4應用為獲取所述通信對端的地址發(fā)起域名服務系統(tǒng)DNS請求; 所述主機根據(jù)所述DNS請求生成基于IPv4的DNS請求報文;并將該DNS請求報文的數(shù) 據(jù)包包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包包頭后,通過IPv6網(wǎng)絡發(fā)送;所述NAT設備通過所述IPv6網(wǎng)絡接收到所述主機發(fā)送的報文;并將接收的DNS請求報 文的數(shù)據(jù)包包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后通過IPv4網(wǎng)絡發(fā)送到DNS服務器;所述NAT設備接收所述DNS服務器返回的DNS回復信息;并將DNS回復信息的數(shù)據(jù)包 包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包包頭后,通過IPv6網(wǎng)絡向所述主機轉(zhuǎn)發(fā);所述主機通過IPv6網(wǎng)絡接收到轉(zhuǎn)發(fā)的DNS回復信息后,將接收的DNS回復信息的數(shù)據(jù) 包包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包包頭,得到基于IPv4的DNS回復信息,解析所述基于IPv4的DNS 回復信息得到所述通信對端的地址。
4.如權(quán)利要求1-3任一所述的方法,其特征在于,所述將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn) 換為IPv6數(shù)據(jù)包的包頭,具體包括所述主機將生成的IPv4數(shù)據(jù)包包頭的格式轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭格式,并且將包 頭中的本機和通信對端的IPv4地址轉(zhuǎn)換為對應的IPv6地址。
5.一種具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的系統(tǒng),其特征在于,包括 第一主機,用于根據(jù)本機的IPv4應用向第二主機發(fā)送的信息生成IPv4數(shù)據(jù)包;并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;NAT設備,用于通過所述IPv6網(wǎng)絡接收所述第一主機發(fā)送的數(shù)據(jù)包;并將接收的數(shù)據(jù) 包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過IPv4網(wǎng)絡轉(zhuǎn)發(fā);第二主機,用于通過所述IPv4網(wǎng)絡接收所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包,并解析該數(shù)據(jù)包 獲取所述第一主機發(fā)送的信息。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述第二主機還用于通過IPv4網(wǎng)絡向所述主機返回IPv4數(shù)據(jù)包;以及 所述NAT設備還用于通過所述IPv4網(wǎng)絡接收返回的IPv4數(shù)據(jù)包;并將該數(shù)據(jù)包的包 頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡轉(zhuǎn)發(fā);以及所述第一主機還用于通過所述IPv6網(wǎng)絡接收到所述NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包后,將接收 的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后得到IPv4數(shù)據(jù)包,解析該IPv4數(shù)據(jù)包獲取所 述第二主機返回的信息。
7.如權(quán)利要求5所述的系統(tǒng),其特征在于,還包括DNS服務器;以及所述第一主機還用于在本機IPv4應用為獲取所述通信對端的地址發(fā)起DNS請求后,根 據(jù)所述DNS請求生成基于IPv4的DNS請求報文;并將該DNS請求報文的數(shù)據(jù)包包頭轉(zhuǎn)換為 IPv6數(shù)據(jù)包包頭后,通過IPv6網(wǎng)絡發(fā)送;以及所述NAT設備還用于通過所述IPv6網(wǎng)絡接收到所述第一主機發(fā)送的報文;并將接收的 DNS請求報文的數(shù)據(jù)包包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后通過IPv4網(wǎng)絡發(fā)送到所述DNS服 務器;以及所述NAT設備接收所述DNS服務器返回的DNS回復信息,并將DNS回復信息的數(shù) 據(jù)包包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包包頭后,通過IPv6網(wǎng)絡向所述第一主機轉(zhuǎn)發(fā);所述第一主機通過IPv6網(wǎng)絡接收到轉(zhuǎn)發(fā)的DNS回復信息后,將接收的DNS回復信息的 數(shù)據(jù)包包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包包頭,得到基于IPv4的DNS回復信息,解析所述基于IPv4 的DNS回復信息得到所述第二主機的地址。
8.一種具有IP v4應用的主機通過IP v6網(wǎng)絡進行通信的方法,其特征在于,包括 第一主機根據(jù)本機的IPv4應用向第二主機發(fā)送的信息生成IPv4數(shù)據(jù)包;并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;所述第二主機通過所述IPv6網(wǎng)絡接收到所述第一主機發(fā)送的數(shù)據(jù)包后,將接收的數(shù) 據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包,并解析該IPv4數(shù)據(jù)包獲取所述 第一主機的IPv4應用發(fā)送的信息。
9.如權(quán)利要求8所述的方法,其特征在于,在所述第二主機獲取所述第一主機的IPv4 應用發(fā)送的信息后,還包括第二主機根據(jù)本機的IPv4應用向所述第一主機返回的信息生成IPv4數(shù)據(jù)包,并將生 成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;所述第一主機通過所述IPv6網(wǎng)絡接收到所述第二主機返回的數(shù)據(jù)包后,將接收的數(shù) 據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包,并解析該IPv4數(shù)據(jù)包獲取所述 第二主機的IPv4應用發(fā)送的信息。
10.如權(quán)利要求8或9所述的方法,其特征在于,所述將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換 為IPv6數(shù)據(jù)包的包頭,具體包括將生成的IPv4數(shù)據(jù)包包頭的格式轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭格式,并且將包頭中的本 機和通信對端的IPv4地址轉(zhuǎn)換為對應的IPv6地址。
11.一種具有IP v4應用的主機通過IP v6網(wǎng)絡進行通信的系統(tǒng),其特征在于,包括 第一主機,用于根據(jù)本機的IPv4應用向第二主機發(fā)送的信息生成IPv4數(shù)據(jù)包;并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;第二主機,用于通過所述IPv6網(wǎng)絡接收到所述第一主機發(fā)送的數(shù)據(jù)包后,將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包,并解析該IPv4數(shù)據(jù)包獲取所述 第一主機的IPv4應用發(fā)送的信息。
12.如權(quán)利要求11所述的系統(tǒng),其特征在于,所述第二主機還用于根據(jù)本機的IPv4應用向所述第一主機返回的信息生成IPv4數(shù)據(jù) 包,并將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;以及所述第一主機還用于通過所述IPv6網(wǎng)絡接收到所述第二主機返回的數(shù)據(jù)包后,將接 收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭,得到IPv4數(shù)據(jù)包,并解析該IPv4數(shù)據(jù)包獲 取所述第二主機的IPv4應用發(fā)送的信息。
13. 一種基于IPv4應用的主機,其特征在于,包括數(shù)據(jù)包生成模塊,用于根據(jù)IPv4應用向通信對端發(fā)送的信息生成IPv4數(shù)據(jù)包;第一包頭轉(zhuǎn)換模塊,用于將生成的IPv4數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭;數(shù)據(jù)包發(fā)送模塊,用于將所述第一包頭轉(zhuǎn)換模塊轉(zhuǎn)換后的數(shù)據(jù)包通過IPv6網(wǎng)絡發(fā)送。
14.如權(quán)利要求13所述的主機,其特征在于,還包括數(shù)據(jù)包接收模塊,用于通過所述IPv6網(wǎng)絡接收到通信對端返回的數(shù)據(jù)包;第二包頭轉(zhuǎn)換模塊,用于將所述數(shù)據(jù)包接收模塊接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù) 據(jù)包的包頭,得到IPv4數(shù)據(jù)包;數(shù)據(jù)包解析模塊,用于解析該IPv4數(shù)據(jù)包獲取所述通信對端返回的信息。
15.如權(quán)利要求13或14所述的主機,其特征在于,所述數(shù)據(jù)包生成模塊生成的IPv4數(shù) 據(jù)包具體為基于IPv4的DNS請求報文;以及所述通信對端具體為DNS服務器。
全文摘要
本發(fā)明涉及移動通信領域,尤其涉及具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的技術。本發(fā)明提供了一種具有IPv4應用的主機通過IPv6網(wǎng)絡進行通信的系統(tǒng)和方法,包括主機根據(jù)IPv4應用向通信對端發(fā)送的信息生成IPv4數(shù)據(jù)包,將數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv6數(shù)據(jù)包的包頭后,通過IPv6網(wǎng)絡發(fā)送;NAT設備接收到主機發(fā)送的數(shù)據(jù)包,將接收的數(shù)據(jù)包的包頭轉(zhuǎn)換為IPv4數(shù)據(jù)包的包頭后,通過IPv4網(wǎng)絡轉(zhuǎn)發(fā);通信對端通過IPv4網(wǎng)絡接收到NAT設備轉(zhuǎn)發(fā)的數(shù)據(jù)包。由于NAT設備僅是對數(shù)據(jù)包的包頭部分進行轉(zhuǎn)換,而不必涉及對傳輸層頭和數(shù)據(jù)部分進行轉(zhuǎn)換,大大減少了系統(tǒng)的處理負擔,使得單點失效發(fā)生的概率下降。
文檔編號H04L29/06GK101909042SQ20091008588
公開日2010年12月8日 申請日期2009年6月3日 優(yōu)先權(quán)日2009年6月3日
發(fā)明者王曉云, 鄧輝, 陳剛, 魏冰, 黃曉慶 申請人:中國移動通信集團公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
密山市| 乐安县| 灌云县| 彰化市| 广元市| 扶绥县| 铁岭县| 宁晋县| 丰台区| 绥中县| 双辽市| 丽水市| 泾阳县| 阿图什市| 河北区| 界首市| 东平县| 永登县| 盐池县| 伽师县| 历史| 拜城县| 张掖市| 吉木乃县| 三原县| 东至县| 中超| 姚安县| 海口市| 满洲里市| 长子县| 阿图什市| 即墨市| 禄丰县| 阳原县| 遂平县| 大庆市| 田林县| 荆门市| 塔河县| 黎城县|