Upload
gizi
View
99
Download
0
Embed Size (px)
DESCRIPTION
UDP MULTICAST OVER IPV6. Speaker : Chang Kai-Jia Date : 2010/04/26. CONTENTS. Introduction IPv6 UDP IP/UDP datagram Multicast Unicast v.s. Multicast IPv6 multicast addresses Demo Server Client Reference. INTRODUCTION. IPv6 網際網路協定版本 6 ( IPv6 )是 IPv4 的下一代網際網路協定版本。 - PowerPoint PPT Presentation
Citation preview
UDP MULTICASTOVER IPV6
Speaker : Chang Kai-JiaDate : 2010/04/26
2
CONTENTS Introduction
IPv6 UDP IP/UDP datagram
Multicast Unicast v.s. Multicast IPv6 multicast addresses
Demo Server Client
Reference3
INTRODUCTION IPv6
網際網路協定版本 6 ( IPv6 )是 IPv4的下一代網際網路協定版本。
這是個用於封包交換網際網路( Internetworks)的網路層協定。
重新設計網際網路協定的主要原因是, IPv4 位址在可預見的未來中即將被耗盡。
IPv6 在 1998 年 12 月被網際網路工程任務小組( Internet Engineering Task Force ,簡稱 IETF )透過公布網際網路標準規範( RFC 2460)的方式定義出來。
4
INTRODUCTION IPv6
IPv6 使用了 128 位元的位址,而 IPv4 只有 32 位元。 位址空間支援 2128 (約 3.4 ×1038 )個位址。 這一擴充套件提供了靈活的位址分配以及路由轉發,並
消除了對網路位址轉換( NAT)的依賴。NAT 是獲得了廣泛部署的減緩 IPv4 位址耗盡的最有效的方式。
IPv6 位址由兩個邏輯部分組成: 一個 64 位的網路和一個 64 位的主機位址,主機位址通
常根據實體位址自動生成,叫做 EUI-64 (或者 64- 位擴充套件唯一標識)
5
INTRODUCTION IPv6
Header:
IPv6 Addresses:IPv6 位址為 128 位元長度,通常寫做 8 組每組四個十六進制的形式。例如: 2001:0DB8:0000:0000:0000:0000:1428:57ab 2001:0DB8:0::0:1428:57ab 2001:DB8::1428:57ab
6
INTRODUCTION UDP :
UDP 協定,提供的是一個不可靠 ( 應用層處理 ) 的非連線(Connectionless) 的資料傳輸服務,它並不運用確認機制來保證資料是否正確的被接收,不需要重傳遺失的資料,資料的接收也可不必按順序進行,也不提供機制來控制資料流的速度。
需快速但能容忍封包錯誤或失去,像一些即時性(interactive) 服務。
Applications: Domain Name System (DNS) streaming media applications such as IPTV Voice over IP (VoIP), Trivial File Transfer Protocol (TFTP) 7
INTRODUCTION UDP :
Header:
Source Port & Destination Port– 來源埠號和目的,各佔 16 位元(bits) 。
UDP Length– 整個封包 (header + data) 長度,以位元組 (byte) 為單位,最小值為 8(Data size =0) 。
Checksum– 封包及資料的檢查碼,用作資料正確性的檢查依據。不一定每個網路設備都會開啟。
8
16-bit
16-bit
16-bit
16-bit
Source Port Destination Port
Length Checksum8 Bytes
Data
INTRODUCTION IP/UDP datagram: For IPv6
10
MULTICAST Unicast &Multicast & Anycast:
Unicast: 每一個目的位址單獨對應一個接收節點。
Multicast: 每一個目的位址對應一群可以接收資訊的節點。
Anycast: 每一個節點對應一群接收節點,但在任何給定時間,只有其中之一可以接收到傳送端來的資訊。
11
12
Unicast
13
Multicast
14
Anyicast
MULTICAST IPv6 multicast addresses
Flags : RFC 2373 定義 000T-Flags 設定為 T=0, 多點傳送位址是 Internet Assigned Numbers Authority (IANA)
配置的永久指派 多點傳送位址。 設定為 T=1, 多點傳送位址是暫時 ( 非永久指派 ) 的多點傳送位址。
Scope : RFC 2373 定義
15
1111 1111 Flags Scope Group ID
8 bits 4 bits 4 bits 112 bits
欄位值 1 2 5 8 E
範圍 Node-local Link-local Site-local Organization-local
global
MULTICAST IPv6 multicast addresses
Scope : Node-Local Scope
FF01:0:0:0:0:0:0:1 All Nodes Address [RFC4291] FF01:0:0:0:0:0:0:2 All Routers Address [RFC4291]
Link-Local Scope FF02:0:0:0:0:0:0:1 All Nodes Address [RFC4291] FF02:0:0:0:0:0:0:2 All Routers Address [RFC4291 ] FF02:0:0:0:0:0:1:2 All-dhcp-agents [RFC3315] 16
1111 1111 Flags Scope Group ID
8 bits 4 bits 4 bits 112 bits
MULTICAST IPv6 multicast addresses
Scope : 其他規範 Site-Local Scope
FF05:0:0:0:0:0:0:2 All Routers Address [RFC4291] FF05:0:0:0:0:0:1:3 All-dhcp-servers [RFC3315]
Variable Scope Multicast Addresses FF0X:0:0:0:0:0:0:0 Reserved Multicast Address [RFC4291] FF0X:0:0:0:0:0:1:1000 Service Location, Version 2 [RFC3111] -FF0X:0:0:0:0:0:1:13FF
17
1111 1111 Flags Scope Group ID
8 bits 4 bits 4 bits 112 bits
MULTICAST IPv6 multicast addresses
Group ID : 識別出多點傳送群組,而且是 scope 中唯一的。 永久指派的 group id 獨立在 scope 之外。 暫時群組識別碼只與特定領域有關。 保留從 FF01:: 到 FF0F:: 的多點傳送位址 ( 知名的位址 ) 。
18
1111 1111 Flags Scope Group ID
8 bits 4 bits 4 bits 112 bits
MULTICAST IPv6 multicast addresses
Group ID : 為了識別節點本機及連結本機領域的所有節點,於是定義了下
列多點傳送位址: FF01::1 ( 節點本機領域所有節點位址 ) FF02::1 ( 連結本機領域所有節點位址 )
為了識別節點本機、連結本機及站台本機領域的所有節點,於是定義了下列多點傳送位址:
FF01::2 ( 節點本機領域所有路由器位址 ) FF02::2 ( 連結本機領域所有路由器位址 ) FF05::2 ( 站台本機領域所有路由器位址 )
19
1111 1111 Flags Scope Group ID
8 bits 4 bits 4 bits 112 bits
DEMO Service
clark@2001:e10:6840:21:21e:90ff:fe32:24e Port:9527 ./service.out
Client zigbee@2001:e10:6840:21:4687:fcff:fe41:6c0b
clark@2001:e10:6840:21:21a:92ff:fe02:3449 Port:9527 ./client.out
20
REFERENCE The Design and Implementation of an IPv6/IPv4 Networ
k Address and Protocol Translator -Marc E. Fiuczynski ,Vincent K. Lam Brian , N. Bershad
INTERNET PROTOCOL VERSION 6 MULTICAST ADDRESSES
http://en.wikipedia.org/wiki/User_Datagram_Protocol http://developerspoint.wordpress.com/2008/06/14/ip-
multicast-in-c-linux/ http://cboard.cprogramming.com/networking-device-co
mmunication/67469-ipv6-multicast-example-code.html
21
22