




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、計計算機硬件基算機硬件基礎教學礎教學中心中心Copyright by NUPT All rights reserved.1Technology of Network Programming網絡編程技術網絡編程技術網絡編程技術網絡編程技術2 IPv6具有簡潔的協議格式、巨大的地址具有簡潔的協議格式、巨大的地址空間、有效的分級尋址和路由結構、地空間、有效的分級尋址和路由結構、地址自動配置、內置的安全機制、更好地址自動配置、內置的安全機制、更好地支持支持QoS服務等特點,是下一階段產業服務等特點,是下一階段產業發展的重點之一。發展的重點之一。網絡編程技術網絡編程技術3 編程訓練目的編程訓練目的 編程
2、訓練要求編程訓練要求 相關知識介紹相關知識介紹 程序設計分析程序設計分析 擴展與提高擴展與提高網絡編程技術網絡編程技術4 掌握掌握IPv6報文格式及基本報頭各字段的報文格式及基本報頭各字段的含義,熟悉含義,熟悉IPv6的擴展報頭。的擴展報頭。 了解了解IPv6的編址方案,掌握根據數據鏈的編址方案,掌握根據數據鏈路層地址構造路層地址構造IPv6地址的方法。地址的方法。 熟悉熟悉IPv6報文中的報文中的TCP/UDP偽報頭格式,偽報頭格式,掌握掌握IPv6數據報文中數據報文中TCP報頭的封裝方報頭的封裝方法。法。網絡編程技術網絡編程技術5 編程訓練目的編程訓練目的 編程訓練要求編程訓練要求 相關知
3、識介紹相關知識介紹 程序設計分析程序設計分析 擴展與提高擴展與提高網絡編程技術網絡編程技術6 編寫程序,構造一個編寫程序,構造一個IPv6格式的格式的IP報文報文: 輸入:二進制輸入:二進制TCP原始數據原始數據以文件形式給以文件形式給出出 。 命令行格式:命令行格式:ipv6pkt tcpdata ipv6data ; 要求:構造地址時源地址使用本機要求:構造地址時源地址使用本機MAC地址地址生成生成 ,目的地址使用,目的地址使用00-00-E4-86-3A-DC地址地址生成。其它頭部參數請自行設定。生成。其它頭部參數請自行設定。 輸出:將封裝好的輸出:將封裝好的IPv6報文輸出到二進制文件
4、報文輸出到二進制文件ipv6data中中網絡編程技術網絡編程技術7 編程訓練目的編程訓練目的 編程訓練要求編程訓練要求 相關知識介紹相關知識介紹 程序設計分析程序設計分析 擴展與提高擴展與提高網絡編程技術網絡編程技術8IPv6基本報頭格式基本報頭格式網絡編程技術網絡編程技術9IPv6基本報頭各字段含義基本報頭各字段含義版本號(版本號(Version)流量等級(流量等級(Traffic Class)流標簽(流標簽(Flow Label)載荷長度(載荷長度(Payload Length) 下一頭部(下一頭部(Next Header) 跳數限制(跳數限制(Hop Limit)源地址(源地址(Sour
5、ce Address)目的地址(目的地址(Destination Address)網絡編程技術網絡編程技術10下一頭部字段的一些常用值下一頭部字段的一些常用值 下一頭部下一頭部描述描述下一頭部下一頭部描述描述0逐跳選項頭逐跳選項頭44分片頭分片頭1ICMP50封裝安全載荷頭封裝安全載荷頭6TCP51認證頭認證頭17UDP59沒有下一頭部沒有下一頭部43路由頭路由頭60目的選項頭目的選項頭網絡編程技術網絡編程技術11IPv4報頭和報頭和IPv6報頭的主要區別報頭的主要區別 IPv4報頭報頭IPv6報頭報頭版本版本4版本版本6服務類型字段(服務類型字段(TOS)流量等級字段(流量等級字段(Traf
6、fic Class)頭部長度、總長度字段頭部長度、總長度字段載荷長度字段載荷長度字段分片重組標志及片偏移字段分片重組標志及片偏移字段分片擴展頭部中包含分片標志及片偏移字段分片擴展頭部中包含分片標志及片偏移字段生存時間字段(生存時間字段(TTL)跳數限制字段(跳數限制字段(Hop Limit)頭部校驗和頭部校驗和無校驗和,由上層協議負責校驗無校驗和,由上層協議負責校驗32比特源地址和目的地址比特源地址和目的地址128比特源地址和目的地址比特源地址和目的地址選項字段選項字段基本報頭不包括選項,選項由擴展報頭中的基本報頭不包括選項,選項由擴展報頭中的逐跳選項頭、路由頭和目的選項頭等確定逐跳選項頭、路
7、由頭和目的選項頭等確定網絡編程技術網絡編程技術12IPv6擴展報頭格式擴展報頭格式 網絡編程技術網絡編程技術13IPv6擴展報頭類型擴展報頭類型 逐跳選項頭部(逐跳選項頭部(Hop-by-Hop Options header) 路由頭部(路由頭部(Routing header,Type 0) 分片頭部(分片頭部(Fragment header) 目的選項頭部(目的選項頭部(Destination Options header) 認證頭部(認證頭部(Authentication header) 封裝安全載荷頭部(封裝安全載荷頭部(Encapsulating Security Payload he
8、ader)網絡編程技術網絡編程技術14IPv6地址地址文本表示法文本表示法冒號十六進制表示法;冒號十六進制表示法; 如:如:ABCD:EF01:2345:6789:ABCD:EF01:2345:6789 壓縮零的冒號十六進制表示法;壓縮零的冒號十六進制表示法; 如:如:FEC0:1:0:0:0:0:0:1234 = FEC0:1:1234 與與IPv4相關的特殊地址表示法;相關的特殊地址表示法; 如:映射如:映射IPv4的的IPv6地址地址 0:0:0:0:0:FFFF:8 = :FFFF:8 網絡編程技術網絡編程技術15IPv6 地址前綴表示地
9、址前綴表示 采用采用IPv4中的無類別域間路由(中的無類別域間路由(CIDR)的前綴長度表示法的前綴長度表示法 ; 格式為:格式為:“IPv6地址地址/前綴長度前綴長度”。 例如:例如:FEC0:0:0:1:1234/64 網絡編程技術網絡編程技術16IPv6單播地址分類單播地址分類單播地址單播地址全球單播地址全球單播地址特殊單播地址特殊單播地址未指定地址未指定地址環回地址環回地址嵌入嵌入IPv4的的IPv6地址地址本地單播地址本地單播地址網絡編程技術網絡編程技術17全球單播地址全球單播地址 一般格式一般格式 實際應用格式實際應用格式網絡編程技術網絡編程技術18特殊單播地址特殊單播地址 未指定
10、地址未指定地址 格式:格式:0:0:0:0:0:0:0:0(或(或“:”) 環回地址環回地址 格式:格式:0:0:0:0:0:0:0:1(或(或“:1”) 嵌入嵌入IPv4的的IPv6地址地址 本地單播地址本地單播地址 網絡編程技術網絡編程技術19嵌入嵌入IPv4的的IPv6地址地址 兼容兼容IPv4的的IPv6地址(已廢除)地址(已廢除) 映射映射IPv4的的IPv6地址地址 網絡編程技術網絡編程技術20本地單播地址本地單播地址 站點本地地址站點本地地址 (已廢除)(已廢除) 鏈路本地地址鏈路本地地址 網絡編程技術網絡編程技術21接口標識符及其生成算法接口標識符及其生成算法IEEE48位位M
11、AC地址地址網絡編程技術網絡編程技術22IPv6多播地址多播地址 多播地址以多播地址以11111111開頭,即具有開頭,即具有FF00:/8前綴。前綴。 網絡編程技術網絡編程技術23IPv6任播地址任播地址 子網子網-路由器任播地址格式路由器任播地址格式 網絡編程技術網絡編程技術24IPv4地址與地址與IPv6地址的比較地址的比較IPv4地址地址IPv6地址地址地址長度為地址長度為32位位地址長度為地址長度為128位位采用點分十進制地址表示法采用點分十進制地址表示法采用冒號十六進制地址表示法采用冒號十六進制地址表示法網絡號采用子網掩碼或網絡前綴長度表示法網絡號采用子網掩碼或網絡前綴長度表示法網
12、絡號只采用網絡前綴長度表示法網絡號只采用網絡前綴長度表示法未指定地址(未指定地址()未指定地址(未指定地址(:)環回地址(環回地址()環回地址(環回地址(:1)公網公網IP地址地址全球全球IP地址地址有私網專用有私網專用IP地址(地址(/8, /12, /16)無無自動專用自動專用IP尋址地址(尋址地址(/16)鏈路本地單播地址(鏈路本地單播地址(FE80:/10)組播地址(組播地址(/8)多播地址(多播地址(FF00:/8)有廣播地址有廣播地址無無網絡編程技術網絡
13、編程技術25 編程訓練目的編程訓練目的 編程訓練要求編程訓練要求 相關知識介紹相關知識介紹 程序設計分析程序設計分析 擴展與提高擴展與提高網絡編程技術網絡編程技術26核心代碼及其說明核心代碼及其說明 參數檢查if (argc != 3) cout nUsage: ipv6pkt.exe inputfile outputfilen; return -1;/打開輸入輸出文件打開輸入輸出文件ifstream inFile(argv1, ios:in|ios:nocreate|ios:binary);if (!inFile) cerr Cannot open file: argv1 endl; ofs
14、tream outFile(argv2, ios:out|ios:trunc|ios:binary);if (!outFile) cerr Cannot create file: argv2 ver_cls_lab = 6;/8位流量等級位流量等級pIPv6Hdr-ver_cls_lab ver_cls_lab += 0;/20位流標簽位流標簽pIPv6Hdr-ver_cls_lab ver_cls_lab += 0;pIPv6Hdr-ver_cls_lab = htonl(pIPv6Hdr-ver_cls_lab);/16位載荷長度位載荷長度pIPv6Hdr-payload_len = ht
15、ons(iDataCount);/8位下一首部位下一首部pIPv6Hdr-next_header = IPPROTO_TCP;/8位跳數限制位跳數限制pIPv6Hdr-hop_limit = 128;網絡編程技術網絡編程技術31全球單播地址全球單播地址 一般格式一般格式網絡編程技術網絡編程技術32全球單播地址全球單播地址 一般格式一般格式 實際應用格式實際應用格式001子網ID接口ID(Modified EUI-64 Format) n bits64-n bits64 bits 網絡編程技術網絡編程技術33核心代碼及其說明核心代碼及其說明 填充初地址字段填充初地址字段/128位源地址,由本機位
16、源地址,由本機Mac地址生成地址生成pIPv6Hdr-src_ip.prefix_subnetid = 0 x1;/3位全球單播地址前綴位全球單播地址前綴pIPv6Hdr-src_ip.prefix_subnetid src_ip.prefix_subnetid += 0 x01;/45位全球路由前綴位全球路由前綴pIPv6Hdr-src_ip.prefix_subnetid src_ip.prefix_subnetid += 0 x01;/16位子網位子網IDpIPv6Hdr-src_ip.prefix_subnetid = hton64(pIPv6Hdr-src_ip.prefix_sub
17、netid);網絡編程技術網絡編程技術34核心代碼及其說明核心代碼及其說明 64位的網絡字節序轉換函數位的網絡字節序轉換函數_int64 hton64(_int64 host64)char tmp, *p=(char*)&host64;for (int i=0; isrc_erface_id0 = pAdapterInfo-Address0;pIPv6Hdr-src_erface_id1 = pAdapterInfo-Address1;pIPv6Hdr-src_erface_id2 = pAdapterInfo-Address2;pIPv6Hdr-src_i
18、erface_id3 = 0 xFF;pIPv6Hdr-src_erface_id4 = 0 xFE;pIPv6Hdr-src_erface_id5 = pAdapterInfo-Address3;pIPv6Hdr-src_erface_id6 = pAdapterInfo-Address4;pIPv6Hdr-src_erface_id7 = pAdapterInfo-Address5;網絡編程技術網絡編程技術37程序流程圖程序流程圖:網絡編程技術網絡編程技術38 編程訓練目的編程訓練目的 編程訓練要求編程訓練要求 相關知識介紹相關知識介紹 程序設計分析程序設計分析 擴展與提高擴展與提高網絡編程技術網絡編程技術39擴展與提高擴展與提高 用于用于IPv6的的TCP/UDP偽報頭偽報頭網絡編程技術網絡編程技術40計算計算TCP校驗和時需覆蓋的字段結構校驗和時需覆蓋的字段結構 TCP報頭的位置報頭的位置 TCPTCP校驗和覆蓋的字段校驗和覆蓋的字段 網絡編程技術網絡編程技術41 TCP的首部的首部/TCP頭部頭部t
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 水利工程中的地下水資源管理與保護考核試卷
- 棉麻行業發展趨勢分析考核試卷
- 海洋生物制藥臨床研究與評價考核試卷
- 電子商務中的社交購物趨勢考核試卷
- 滑動軸承的靜力學與動力學分析考核試卷
- 影視設備倉儲物流咨詢批發考核試卷
- 光電子器件在太赫茲技術的應用前景考核試卷
- 生態環境宣傳教育與普及考核試卷
- 曲阜師范大學《植物造景與庭院設計》2023-2024學年第二學期期末試卷
- 山東省德州夏津縣2024-2025學年初三質量檢測試題(三)化學試題含解析
- 城市園林綠化養護管理服務投標方案(技術方案)
- 小學京劇知識
- 2025年廣東省深圳市福田區5校中考一模歷史試題(原卷版+解析版)
- 肺結核宣教課件
- 中國新聞事業史知到課后答案智慧樹章節測試答案2025年春山東大學
- 事故隱患內部舉報獎勵制度
- 2025年靜力學測試題及答案
- 鐵塔土建施工方案
- 2025年演出經紀人《演出市場政策與經紀實務》考前點題卷一
- GB/T 45235-2025電子電氣產品中雙酚A的測定高效液相色譜法
- 《2025年公路玻璃纖維筋混凝土護欄與鋪裝結構應用技術規程》知識培訓
評論
0/150
提交評論