<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BATMAN 彙整 - 碼蟻創研工坊 - CODEANT STUDIOS</title>
	<atom:link href="http://codeant.cc/archives/tag/batman/feed" rel="self" type="application/rss+xml" />
	<link>http://codeant.cc/archives/tag/batman</link>
	<description></description>
	<lastBuildDate>Sat, 13 Jul 2013 00:21:49 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>

<image>
	<url>http://codeant.cc/wp-content/uploads/2020/10/cropped-Code-Ant-Logo-2-32x32.png</url>
	<title>BATMAN 彙整 - 碼蟻創研工坊 - CODEANT STUDIOS</title>
	<link>http://codeant.cc/archives/tag/batman</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>網狀路由協議 &#8211; BATMAN-Advanced 之 OGM 封包</title>
		<link>http://codeant.cc/archives/40</link>
		
		<dc:creator><![CDATA[codeant]]></dc:creator>
		<pubDate>Sat, 13 Jul 2013 00:21:49 +0000</pubDate>
				<category><![CDATA[Netowrk]]></category>
		<category><![CDATA[Advanced]]></category>
		<category><![CDATA[BATMAN]]></category>
		<category><![CDATA[Mesh]]></category>
		<category><![CDATA[OGM]]></category>
		<guid isPermaLink="false">http://codeant.cc/2013/07/13/batman-adv-ogm/</guid>

					<description><![CDATA[<p>目前BATMAN Advanced在新版本（2.6.38以後）的Linux內核已成為一個標準模組，BATMAN [&#8230;]</p>
<p>這篇文章 <a href="http://codeant.cc/archives/40">網狀路由協議 &#8211; BATMAN-Advanced 之 OGM 封包</a> 最早出現於 <a href="http://codeant.cc">碼蟻創研工坊 - CODEANT STUDIOS</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-indent: 24pt; line-height: 150%; text-align: left;"><span style="font-size: 16px; line-height: 26px;">目前BATMAN Advanced在新版本（2.6.38以後）的Linux內核已成為一個標準模組，BATMAN的設計目標是為了可以建置一個大型的網路，為了減少路由訊息封包所帶來的負擔，它只使用了一個名為Originator Messages（OGMs）的封包來進行路由資訊的建立。</span></p>
<p>  <span id="more-40"></span>  </p>
<p style="text-indent: 24pt; line-height: 150%; text-align: left;"><span style="font-size: 16px; line-height: 26px;">透過廣播與再廣播OGMs的方式交換路由資訊，以傳輸品質（Transmission Quality，簡稱TQ）做為路徑選擇的依據，TQ值的計算必須先取得接收品質（Receive Quality，簡稱RQ）與回聲品質（Echo Quality，簡稱EQ）這二個參考數值。我們先假設一情境，即Node A與Node B互為彼此的Best Hop，而步驟1與步驟3可同時進行，步驟2與步驟4可同時進行，則其路由資訊的建立步驟如下圖：</span></p>
<p style="text-indent: 24pt; line-height: 150%; text-align: center;">&nbsp;<img fetchpriority="high" decoding="async" class=" size-full wp-image-39" src="http://codeant.cc/wp-content/uploads/2013/07/images_phocagallery_Network_batman-adv-ogm.jpg" alt="batman-adv-ogm" width="544" height="245" srcset="http://codeant.cc/wp-content/uploads/2013/07/images_phocagallery_Network_batman-adv-ogm.jpg 544w, http://codeant.cc/wp-content/uploads/2013/07/images_phocagallery_Network_batman-adv-ogm-300x135.jpg 300w" sizes="(max-width: 544px) 100vw, 544px" /></p>
<p style="font-size: 16px; line-height: 26px; text-align: left;"><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;">1. &nbsp; &nbsp;各網路節點以廣播的方式定期發送路由訊息封包即OGMs封包，其內容包含發送端位址，轉發節點位址，存活時間（Time To Live，簡稱TTL）值和序列號（Sequence Number），附近的鄰近節點計算已收到的OGMs封包數量作為RQ值，如圖的步驟1及步驟3。</span></p>
<p style="font-size: 16px; line-height: 26px; text-align: left;"><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;">2. &nbsp;&nbsp;<span style="line-height: normal;"></span>檢查每個路由的資訊，選擇最好的單跳節點（Best Hop Neighbor）。</span></p>
<p style="font-size: 16px; line-height: 26px; text-align: left;"><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;">3. &nbsp; &nbsp;<span style="line-height: normal;"></span>將最好的單跳節點傳送過來的OGMs封包進行再廣播，原始的OGMs封包發送節點透過接收到的再廣播OGMs數量可以得到EQ，如圖的步驟2及步驟4。</span></p>
<p style="font-size: 16px; line-height: 26px; text-align: left;"><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;">4. &nbsp; &nbsp;<span style="line-height: normal;"></span>如果EQ值大於RQ，則TQ = max（TQ）；如果RQ值大於EQ，則TQ = max（TQ）&times; EQ &divide; RQ。</span></p>
<p><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_line" href="https://www.addtoany.com/add_to/line?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" title="Line" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_wechat" href="https://www.addtoany.com/add_to/wechat?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" title="WeChat" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_sina_weibo" href="https://www.addtoany.com/add_to/sina_weibo?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" title="Sina Weibo" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_qzone" href="https://www.addtoany.com/add_to/qzone?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" title="Qzone" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=http%3A%2F%2Fcodeant.cc%2Farchives%2F40&#038;title=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20%E4%B9%8B%20OGM%20%E5%B0%81%E5%8C%85" data-a2a-url="http://codeant.cc/archives/40" data-a2a-title="網狀路由協議 – BATMAN-Advanced 之 OGM 封包"></a></p><p>這篇文章 <a href="http://codeant.cc/archives/40">網狀路由協議 &#8211; BATMAN-Advanced 之 OGM 封包</a> 最早出現於 <a href="http://codeant.cc">碼蟻創研工坊 - CODEANT STUDIOS</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>網狀路由協議 &#8211; BATMAN-Advanced Routing Protocol</title>
		<link>http://codeant.cc/archives/38</link>
		
		<dc:creator><![CDATA[codeant]]></dc:creator>
		<pubDate>Sat, 13 Jul 2013 00:07:43 +0000</pubDate>
				<category><![CDATA[Netowrk]]></category>
		<category><![CDATA[BATMAN]]></category>
		<category><![CDATA[Mesh]]></category>
		<category><![CDATA[自組網]]></category>
		<guid isPermaLink="false">http://codeant.cc/2013/07/13/batman-adv-protocol/</guid>

					<description><![CDATA[<p>BATMAN（Better Approach to Mobile Ad-hoc Networking）是一個主 [&#8230;]</p>
<p>這篇文章 <a href="http://codeant.cc/archives/38">網狀路由協議 &#8211; BATMAN-Advanced Routing Protocol</a> 最早出現於 <a href="http://codeant.cc">碼蟻創研工坊 - CODEANT STUDIOS</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-indent: 24pt; line-height: 150%; text-align: left;"><span style="font-size: 16px; line-height: 26px;">BATMAN（Better Approach to Mobile Ad-hoc Networking）是一個主動式的網狀路由協議，採用距離向量的路由方法，目前該協議同時存在二個版本。</span></p>
<p>  <span id="more-38"></span>  </p>
<p style="font-size: 16px; line-height: 26px; text-align: left; text-indent: 24pt;"><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;">原本BATMAN路由協議是運行在OSI第三層，與大多數的OSI第三層的網狀路由協議相同，採用User Datagram Protocol（UDP）的傳輸方式。BATMAN Advanced，是一個運行在OSI第二層的版本，其核心的技術與原本OSI第三層的路由協議版本並無不同，BATMAN Advanced於2007年進行第一次發佈（Release）；開發團隊改以Linux內核模組的方式進行實作，因為其運作在內核空間，可以直接將封包進行傳送，所以可以避免校驗合（Checksum）計算的負擔。</span></p>
<p style="font-size: 16px; line-height: 26px; text-align: left; text-indent: 24pt;"><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;"></span><span style="font-family: 'comic sans ms', sans-serif; font-size: 12pt;">當BATMAN Advanced內核模組被載入後，會產生一虛擬網路介面，其真正的資料傳輸必須透過真實的網路介面來進行，這個過程稱為捆綁（Binding），可以同時綑綁許多個真實的網路介面，例如Ethernet或是802.11。BATMAN Advanced會向內核註冊一個新的OSI第二層通訊協議，編號為十六進制的0x4305，被定義為ETH_P_BATMAN，當真實的網路介面收到此一類型的封包後，會將封包重導向至BATMAN Advanced內核模組進行處理。</span></p>
<p><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_line" href="https://www.addtoany.com/add_to/line?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" title="Line" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_wechat" href="https://www.addtoany.com/add_to/wechat?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" title="WeChat" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_sina_weibo" href="https://www.addtoany.com/add_to/sina_weibo?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" title="Sina Weibo" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_qzone" href="https://www.addtoany.com/add_to/qzone?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" title="Qzone" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&amp;linkname=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=http%3A%2F%2Fcodeant.cc%2Farchives%2F38&#038;title=%E7%B6%B2%E7%8B%80%E8%B7%AF%E7%94%B1%E5%8D%94%E8%AD%B0%20%E2%80%93%20BATMAN-Advanced%20Routing%20Protocol" data-a2a-url="http://codeant.cc/archives/38" data-a2a-title="網狀路由協議 – BATMAN-Advanced Routing Protocol"></a></p><p>這篇文章 <a href="http://codeant.cc/archives/38">網狀路由協議 &#8211; BATMAN-Advanced Routing Protocol</a> 最早出現於 <a href="http://codeant.cc">碼蟻創研工坊 - CODEANT STUDIOS</a>。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
