TWI387268B - 路由器及其處理IPv6資料包的方法 - Google Patents
路由器及其處理IPv6資料包的方法 Download PDFInfo
- Publication number
- TWI387268B TWI387268B TW98111183A TW98111183A TWI387268B TW I387268 B TWI387268 B TW I387268B TW 98111183 A TW98111183 A TW 98111183A TW 98111183 A TW98111183 A TW 98111183A TW I387268 B TWI387268 B TW I387268B
- Authority
- TW
- Taiwan
- Prior art keywords
- data packet
- ipv6
- packet
- network
- control information
- Prior art date
Links
Description
本發明涉及網路通訊,尤其涉及一種路由器及其處理IPv6資料包的方法。
在傳統的IP網路中,主要採用的是IPv4網路通訊協定。隨著Internet的不斷發展,IPv4網路通訊協定逐漸暴露出許多不足,其中最嚴重、最迫切需要解決的就是IP位址空間耗盡和骨幹路由器中路由表過於龐大的問題,這兩個問題直接導致了下一代網際網路協定-即IPv6網路通訊協定的誕生。
但是,由於IPv4網路的基礎架構已經相當完善,目前Internet網路中IPv4的用戶和設備數量龐大,通訊網路運營商也不可能一下拋棄現有的IPv4網路而改建IPv6網路,因此從IPv4協定直接過渡到IPv6協定不太現實。因此,如何利用現有的網路實現IPv4協定與IPv6協定之同網共存是目前最值得關注的問題。
有鑒於此,有必要提供一種路由器,可同時處理IPv4資料包與IPv6資料包,實現IPv4協定與IPv6協定之同網共存。
此外,還需提供一種路由器處理IPv6資料包方法,可在不改變原有網路架構情況下,實現IPv4協定與IPv6協定之同網共存。
本發明提供的路由器,與區域網及廣域網連接,可同時處理IPv4資料包與IPv6資料包。該路由器包括區域網埠、廣域網埠、封包判斷模組、網路判斷模組、修改模組、封包轉發模組及處理模組。封包判斷模組用於接收資料包,並判斷資料包是否為IPv6資料包。網路判斷模組用於在資料包為IPv6資料包時根據IPv6資料包的控制資訊判斷IPv6資料包的來源,該來源包括區域網或廣域網。修改模組用於根據網路判斷模組判斷的IPv6資料包的來源修改IPv6資料包的控制資訊,其中該修改模組修改的該IPv6資料包之控制資訊為資料結構skb->dev。封包轉發模組用於根據修改後的IPv6資料包的控制資訊經區域網埠或廣域網埠直接轉發IPv6資料包至區域網或者廣域網。處理模組用於執行封包判斷模組、網路判斷模組、修改模組及封包轉發模組。
本發明提供的路由器處理IPv6資料包的方法包括以下步驟:接收資料包,並判斷資料包是否為IPv6資料包;如果資料包是IPv6資料包,則根據IPv6資料包的控制資訊判斷IPv6資料包的來源;根據IPv6資料包的來源,修改IPv6資料包的控制資訊,其中修改的該IPv6資料包之控制資訊為資料結構skb->dev;以及根據修改後的IPv6資料包的控制資訊,調用轉發函數直接轉發IPv6資料包至區域網或者廣域網。
藉由以下對具體實施方式詳細的描述並結合附圖,將可輕易的瞭解上述內容及此項發明之技術效果。
請參閱圖1,所示為本發明一實施方式中路由器10之應用環境及功能模組圖。在本實施方式中,路由器10處理區域網與廣域網之間的IPv4與IPv6通訊,如果是區域網內的IPv4與IPv6通訊,則可以藉由硬體的閘道和軟體的橋接器來完成資料包的傳送。路由器10包括區域網埠110與廣域網埠120。路由器10分別經區域網埠110及廣域網埠120與區域網20及廣域網30相連,用於接收並處理來自區域網20及廣域網30資料包。
在本實施方式中,路由器10包括封包判斷模組130、網路判斷模組140、修改模組150、封包轉發模組160及處理模組170。封包判斷模組130用於經區域網埠110或廣域網埠120從區域網20或廣域網30接收資料包,並判斷資料包是否為IPv6資料包。其中資料包中的資訊包括資料包的類型欄位(Ether Type)。在本實施方式中,封包判斷模組130根據所接收到的資料包的類型欄位來判斷該資料包的類型。在本實施方式中,若封包判斷模組130判斷出所接收的的資料包不是IPv6資料包,而是路由器10原本就可以路由處理的資料包,如IPv4資料包、地址解釋協定(Address Resolution Protocol,ARP)資料包等,則路由器10就按照其原有的處理方法來對資料包進行轉發。例如,若所接收的資料包為IPv4資料包,則封包判斷模組130先對IPv4資料包進行位址轉換,再開啟IPv4協定棧轉發IPv4資料包。
網路判斷模組140用於在資料包為IPv6資料包時判斷IPv6資料包之來源,即判斷IPv6資料包是來自區域網20
還是來自廣域網30。在本實施方式中,網路判斷模組140藉由判斷IPv6資料包之控制資訊來確定IPv6資料包是來自區域網20還是來自廣域網30。在本實施方式中,該IPv6資料包之控制資訊為資料結構skb->dev,當接收到IPv6資料包時,該控制資訊為接收該IPv6資料包的設備之設備資訊。當IPv6資料包之控制資訊是區域網埠110之設備資訊時,網路判斷模組140判斷IPv6資料包來自區域網20;當IPv6資料包之控制資訊是廣域網埠120之設備資訊時,網路判斷模組140判斷IPv6資料包來自廣域網30。
修改模組150用於根據該網路判斷模組判斷140的Pv6資料包之來源修改IPv6資料包之控制資訊。在本實施方式中,當網路判斷模組140判斷IPv6資料包來自區域網20時,修改模組150將IPv6資料包之控制資訊,即資料結構skb->dev的內容修改為廣域網埠120之設備資訊;當網路判斷模組140判斷IPv6資料包來自廣域網30時,修改模組150將IPv6資料包之控制資訊,即資料結構skb->dev的內容修改為區域網埠110之設備資訊。
封包轉發模組160用於根據修改後的IPv6資料包之控制資訊經區域網埠110或廣域網埠120直接轉發IPv6資料包至區域網20或者廣域網30,而不再對IPv6資料包進行路由處理。在本實施方式中,修改後的IPv6資料包之控制資訊為區域網埠110之設備資訊時,封包轉發模組160調用轉發函數經區域網埠110直接轉發IPv6資料包至區域網20;修改後的IPv6資料包之控制資訊為廣域網埠120之
設備資訊時,封包轉發模組160調用轉發函數經廣域網埠120直接轉發IPv6資料包至廣域網30。在本實施方式中,轉發函數為dev_queue_xmit( )函數。
處理模組170用於執行封包判斷模組130、網路判斷模組140、修改模組150及封包轉發模組160。
因路由器10藉由修改資料包之控制資訊並調用轉發函數就能處理並轉發其接收的所有IPv6資料包,使得路由器10不但可以處理IPv4資料包,也能簡單處理IPv6資料包,非常簡單的實現了IPv4到IPv6的過渡。
請參閱圖2,所示為本發明路由器處理IPv6的資料包的方法一實施方式之流程圖。所述處理IPv6的資料包的方法藉由圖1所示的功能模組來執行。
在步驟S200,封包判斷模組130接收資料包。在本實施方式中,資料包是來自區域網10或者廣域網20。
在步驟S202,封包判斷模組130判斷接收到的資料包是否為IPv6資料包。在本實施方式中,封包判斷模組130根據資料包之類型欄位來判斷資料包是否為IPv6資料包,若資料包之類型欄位為IPv6,則資料包為IPv6資料包,否則,判定資料包的類型不為IPv6資料包。
如果封包判斷模組130判定資料包為IPv6資料包,則在步驟S204,網路判斷模組140判斷該IPv6資料包之來源。在本實施方式中,網路判斷模組140根據接收的IPv6資料包之控制資訊確定IPv6資料包之來源。在本實施方式中,若IPv6資料包之控制資訊是區域網埠110之設備資訊,
則判斷模組130判定IPv6資料包來自區域網20,若IPv6資料包之控制資訊是廣域網埠120之設備資訊時,則判定IPv6資料包來自廣域網30。
若IPv6資料包來自區域網20,則在步驟S206,修改模組150修改該IPv6資料包之控制資訊,即資料結構skb->dev為廣域網埠120之設備資訊。在本實施方式中,處理模組170藉由查詢法將廣域網埠120之設備資訊找出來,然後修改模組150把IPv6資料包之控制資訊,即資料結構skb->dev修改為廣域網埠120之設備資訊。在本實施方式中,查詢法可以為通訊領域內常用的指標查詢法、查表法等。
在步驟S208中,封包轉發模組160根據修改後的IPv6資料包之控制資訊直接轉發IPv6資料包至廣域網30,而不需要對IPv6資料包進行路由處理。在本實施方式中,封包轉發模組160調用轉發函數經廣域網埠120直接轉發IPv6資料包至廣域網30。在本實施方式中,轉發函數為dev_queue_xmit( )函數。
若IPv6資料包來自廣域網30,則在步驟S210,修改模組150修改IPv6資料包的控制資訊為區域網埠110的設備資訊。
在步驟S212中,封包轉發模組160調用轉發函數根據修改後的IPv6資料包之控制資訊經區域網埠110直接轉發IPv6資料包至區域網20,而不需要對IPv6資料包進行路由處理。
如果資料包不是IPv6資料包時,則在步驟S214,路由器10按照原有的路由處理方法處理資料包。如,若所接收的資料包為IPv4資料包,則路由器10先對IPv4資料包進行位址轉換,再開啟IPv4協定棧轉發IPv4資料包。
本發明的路由器10及其處理IPv6資料包的方法藉由封包判斷模組130、網路判斷模組140以及封包轉發模組150來實現路由器10同時處理IPv4資料包與IPv6資料包,使得在原有網路架構基本不改變的情況下利用現有的網路實現IPv4協定與IPv6協定之同網共存。
綜上所述,本發明符合發明專利要件,爰依法提出專利申請。惟,以上所述者僅為本發明之較佳實施例,舉凡熟悉本案技藝之人士,在爰依本案發明精神所作之等效修飾或變化,皆應包含於以下之申請專利範圍內。
10‧‧‧路由器
110‧‧‧區域網埠
120‧‧‧廣域網埠
130‧‧‧封包判斷模組
140‧‧‧網路判斷模組
150‧‧‧修改模組
160‧‧‧封包轉發模組
170‧‧‧處理模組
20‧‧‧區域網
30‧‧‧廣域網
圖1為本發明路由器一實施方式之應用環境及功能模組圖。
圖2為本發明處理IPv6資料包的方法一實施方式之流程圖。
Claims (14)
- 一種路由器,可同時處理IPv4與IPv6資料包,其包括區域網埠與廣域網埠,該路由器包括:封包判斷模組,用於接收資料包,並判斷該資料包是否為IPv6資料包;網路判斷模組,用於在該資料包為IPv6資料包時根據該IPv6資料包之控制資訊判斷該IPv6資料包的來源,該來源包括區域網或廣域網;修改模組,用於根據該網路判斷模組判斷的IPv6資料包之來源修改該IPv6資料包之控制資訊,其中該修改模組修改的該IPv6資料包之控制資訊為資料結構skb->dev;封包轉發模組,用於根據該修改後的IPv6資料包之控制資訊經該區域網埠或該廣域網埠直接轉發該IPv6資料包至區域網或者廣域網;以及處理模組,用於執行該封包判斷模組、該網路判斷模組、該修改模組及該封包轉發模組。
- 如申請專利範圍第1項所述之路由器,其中該網絡判斷模組在該IPv6資料包之控制資訊為區域網埠之設備資訊時判定該IPv6資料包之來源為區域網。
- 如申請專利範圍第1項所述之路由器,其中該網絡判斷模組在該IPv6資料包之控制資訊為廣域網埠之設備資訊時判定該IPv6資料包之來源為廣域網。
- 如申請專利範圍第2項所述之路由器,其中該修改模組在該IPv6資料包之來源是區域網時將該IPv6資料包之控制資訊修改為該廣域網埠之設備資訊。
- 如申請專利範圍第3項所述之路由器,其中該修改模組在該IPv6資料包之來源是廣域網時將該IPv6資料包之控制資訊修改為該區域網埠之設備資訊。
- 如申請專利範圍第1項所述之路由器,其中該資料包包括類型欄位。
- 如申請專利範圍第6項所述之路由器,其中該封包判斷模組根據該資料包之類型欄位判斷該資料包是否為IPv6資料包。
- 一種路由器處理IPv6資料包的方法,包括以下步驟:接收資料包,並判斷該資料包是否為IPv6資料包;如果該資料包是IPv6資料包,則根據該IPv6資料包之控制資訊判斷該IPv6資料包之來源;根據該IPv6資料包之來源,修改該IPv6資料包之控制資訊,其中修改的該IPv6資料包之控制資訊為資料結構skb->dev;以及根據該修改後的IPv6資料包之控制資訊,直接轉發該IPv6資料包至區域網或者廣域網。
- 如申請專利範圍第8項所述之路由器處理IPv6資料包的方法,其中該資料包包括類型欄位。
- 如申請專利範圍第9項所述之路由器處理IPv6資料包的方法,其中根據該資料包之類型欄位來判斷該資料包是否為IPv6資料包。
- 如申請專利範圍第10項所述之路由器處理IPv6資料包的方法,其中根據該IPv6資料包之控制資訊判斷該IPv6資料包之來源之步驟包括:判斷該IPv6資料包之控制資訊是否為該區域網埠之設備 資訊;若該IPv6資料包之控制資訊為該區域網埠之設備資訊,則判定該IPv6資料包來自區域網。
- 如申請專利範圍第11項所述之路由器處理IPv6資料包的方法,其中根據該IPv6資料包之來源修改該IPv6資料包之控制資訊該之步驟包括:若該IPv6資料包來自區域網,則修改該IPv6資料包之控制資訊為該廣域網埠之設備資訊。
- 如申請專利範圍第11項所述之路由器處理IPv6資料包的方法,其中根據該IPv6資料包之控制資訊判斷該IPv6資料包之來源之步驟包括:若該IPv6資料包之控制資訊不為該區域網埠之設備資訊,則判定該IPv6資料包來自廣域網。
- 如申請專利範圍第13項所述之路由器處理IPv6資料包的方法,其中根據該IPv6資料包之來源修改IPv6資料包之控制資訊之步驟包括:若該IPv6資料包來自廣域網,則修改該IPv6資料包之控制資訊為該區域網埠之設備資訊。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW98111183A TWI387268B (zh) | 2009-04-03 | 2009-04-03 | 路由器及其處理IPv6資料包的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW98111183A TWI387268B (zh) | 2009-04-03 | 2009-04-03 | 路由器及其處理IPv6資料包的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201038015A TW201038015A (en) | 2010-10-16 |
TWI387268B true TWI387268B (zh) | 2013-02-21 |
Family
ID=44856886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW98111183A TWI387268B (zh) | 2009-04-03 | 2009-04-03 | 路由器及其處理IPv6資料包的方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI387268B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW526453B (en) * | 2000-01-07 | 2003-04-01 | Ibm | Method and system for frame and protocol classification |
CN1757221A (zh) * | 2003-03-10 | 2006-04-05 | 思科技术公司 | 利用IPv6移动路由器穿过IPv4网络的布置 |
EP1853042A1 (en) * | 2005-02-25 | 2007-11-07 | Matsushita Electric Industrial Co., Ltd. | Information processing system, information processing device, server device, information processing method, and program |
-
2009
- 2009-04-03 TW TW98111183A patent/TWI387268B/zh not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW526453B (en) * | 2000-01-07 | 2003-04-01 | Ibm | Method and system for frame and protocol classification |
CN1757221A (zh) * | 2003-03-10 | 2006-04-05 | 思科技术公司 | 利用IPv6移动路由器穿过IPv4网络的布置 |
EP1853042A1 (en) * | 2005-02-25 | 2007-11-07 | Matsushita Electric Industrial Co., Ltd. | Information processing system, information processing device, server device, information processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
TW201038015A (en) | 2010-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015074324A1 (zh) | 一种数据包快速转发方法及装置 | |
JP5506932B2 (ja) | 新たなネットワークとインターネットとの相互通信の実現方法、システム及び通信端 | |
US7583674B2 (en) | Switch and method for supporting internet protocol (IP) network tunnels | |
KR20130112863A (ko) | 사설 ipv4 도달가능성으로 ds-라이트 향상 | |
JP2004364141A (ja) | Ipアドレス変換装置およびパケット転送装置 | |
WO2009052668A1 (fr) | Dispositif nat-pt et procédé de répartition de charge pour un dispositif nat-pt | |
WO2015143802A1 (zh) | 业务功能链处理方法及装置 | |
JP2012521147A (ja) | 共通IPアドレス及びMACアドレスを有するVoIPカードを備えるアクセス・ノード | |
JP6118122B2 (ja) | 通信装置及びその制御方法、プログラム | |
EP2466806B1 (en) | Method and system for implementing network intercommunication | |
WO2014187212A1 (zh) | 一种转发报文的方法及装置 | |
JPWO2012081631A1 (ja) | スイッチング装置、その上位装置、ネットワーク及びパケット転送方法 | |
JP6098192B2 (ja) | アドレス生成装置 | |
JP2008510440A (ja) | モバイルIPv6ノードとIPv4通信パートナーとの間の通信を実施する方法 | |
CN114301868B (zh) | 快速生成虚拟容器浮动ip的方法及网络直通的方法和装置 | |
WO2011032446A1 (zh) | 一种数据封装方法及系统 | |
WO2017076148A1 (zh) | 上行数据包转发方法及装置、下行数据包转发方法及装置 | |
CN1741502A (zh) | 基于4over6的IPv6和IPv4网间互通的方法 | |
CN100539551C (zh) | 静态网络地址转换-协议转换的实现方法及网关设备 | |
WO2012122832A1 (zh) | 网络地址转换表项的热备份方法及装置 | |
CN101841457B (zh) | 路由器及其处理IPv6数据包的方法 | |
TWI387268B (zh) | 路由器及其處理IPv6資料包的方法 | |
WO2010054561A1 (zh) | 一种媒体流代理方法、语音交换机及通信系统 | |
CN109088953B (zh) | 一种Linux网关代理转换IP的方法及装置 | |
CN102420835B (zh) | 一种融合通信系统中rtp媒体流的代理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |