Oct 4, 2008

How to advertise some interface network into OSPF without been associated with any OSPF area ?

假設我們想要將特定介面(非所有介面)注入OSPF路由中,但是不讓它跟任何一個Area相關,唯一的方式只能使用External Route(redistribute)來達成,比較tricky的是要如何選定特定的interface,請參考:

interface loopback 0
ip address 10.1.1.1 255.255.255.255
!
route-map INT permit 10
match interface Loopback0
!
router ospf 1
redistribute connected subnets route-map INT

Oct 3, 2008

How to limit bandwidth usage from a specific mac address ?

假設我們現在要設定來自於某設備的流量不得超過512K,但是不能使用ACL的方式來過濾條件,我們可以轉個彎找出該設備的MAC來加以過濾(必須是直連或是同屬一個segment的設備,否則經過Layer 3的設備後,Frame中的來源MAC會被取代掉)。

class-map match-all MAC
match source-address mac 1111.2222.3333
!
policy-map CAR
class MAC
police 512000
!
interface s0/0
service-policy input CAR

How to deny device communicate with each other via layer 2 in the same vlan without VLAN ACL ?

一般來說如果在同一個VLAN中的主機可以直接透過Layer 2交換,不需要透過Layer 3 device。不過如果今天我們想要利用最簡單的設定不透過VLAN ACL來達成目的,我們可以使用switchport protected指令來完成。

假設FastEthernet 0/1, 0/2, 0/3皆屬於同一個VLAN 100,我們可以這樣設定:

Switch(config)#int range f0/1 - 3
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 100
Switch(config-if-range)#switchport protected

How to filter NTP Client in NTP Master ?

假設R1為NTP Server,只開放給R2,R3當成NTP Client,同時設定密碼為CISCO,R1,R2,R3皆使用loopback interface當source去進行NTP synchronization:

R1

interface loopback 0
ip address 1.1.1.1 255.255.255.255
!
access-list 1 permit 2.2.2.2 0.0.0.0
access-list 1 permit 3.3.3.3 0.0.0.0
!
ntp source loopback0
ntp master
ntp authentication-key 1 md5 CISCO
ntp access-group peer 1


R2
interface loopback 0
ip address 2.2.2.2 255.255.255.255
!
ntp source loopback0
ntp authentication-key 1 md5 CISCO
ntp authenticate
ntp trust-key 1
ntp server 1.1.1.1 key 1


R3
interface loopback 0
ip address 3.3.3.3 255.255.255.255
!
ntp source loopback0
ntp authentication-key 1 md5 CISCO
ntp authenticate
ntp trust-key 1
ntp server 1.1.1.1 key 1

How to config redundant ip gateway without 'standby' command ?

一般人都會使用HSRP(Hot Standby Router Protocol)來設定Gateway備援避免單一路由器failure造成網路中斷。如果今天有一個題目的條件是:
1.不得使用standby相關的指令 => 意思就是不得使用HSRP,請改用VRRP(Virtual Router Redundancy Protocol)
2.R1為主要出口,隨時監控路由100.100.100.0/24的存在狀況決定是否要改用另一台路由器R2 redundant ip gateway;若是改由R2當成主要出口之後,如果100.100.100.0/24路由恢復正常,必須馬上改以R1當主要出口 => 必須啟用preempt
3.要求R1,R2兩個redundant router之間使用md5進行authentication,password為cisco => 必須使用key-chain

R1(config)#track 1 ip route 100.100.100.0 255.255.255.0 reachability
!
R1(config)#key chain VRRP
R1(config-keychain)#key 1
R1(config-keychain-key)#key-string cisco
!
R1(config)#int f0/0
R1(config-if)#ip address 10.1.1.253 255.255.255.0
R1(config-if)#vrrp 1 ip 10.1.1.254
R1(config-if)#vrrp 1 priority 101
R1(config-if)#vrrp 1 authentication md5 key-chain VRRP
R1(config-if)#vrrp 1 track 1 decrement 10
!
R1(config-if)#vrrp 1 preempt


R2(config)#key chain VRRP
R2(config-keychain)#key 1
R2(config-keychain-key)#key-string cisco
!
R2(config)#int f0/0
R2(config-if)#ip address 10.1.1.252 255.255.255.0
R2(config-if)#vrrp 1 ip 10.1.1.254
R2(config-if)#vrrp 1 authentication md5 key-chain VRRP
R2(config-if)#vrrp 1 preempt

How to filter telnet without access-group under interface and access-class under line vty ?

最近我在網路上看到有人談到這樣的主題,禁止在interface or line vty中設定任何的filter來過濾telnet traffic,如果在沒有禁止使用ACL的條件下,我第一個想到的就是利用CoPP(Control Plane Policing)

假設我們只允許其他Router Loopback 10.1.1.1, 10.1.1.2進行telnet連上本機的話,我們可以利用以下的CoPP設定來達成,不需要在interface or line vty中設定:

Router(config)# access-list 100 deny tcp host 10.1.1.1 any eq telnet 
Router(config)# access-list 100 deny tcp host 10.1.1.2 any eq telnet
Router(config)# access-list 100 permit tcp any any eq telnet
!
Router(config)# class-map TELNET
Router(config-cmap)# match access-group 100
!
Router(config)# policy-map CoPP
Router(config-pmap)# class TELNET
Router(config-pmap-c)# drop
!
Router(config)# control-plane
Router(config-cp)# service-policy input CoPP

線上遊戲的新藍海?語言學習+遊戲錢景 兩岸華人都在看!

線上遊戲的新藍海?語言學習+遊戲錢景 兩岸華人都在看! 
手持語音行動學習機市場需求大 軟體、行動裝置業者互得利

亞洲線上遊戲雖然是個高毛利卻也是高風險的流行性消費產業,動輒需要2~3年的開發期,但又難以在遊戲研發初期即準確預測未來市場,在一片火紅的紅海中,各家線上遊戲大廠無不積極尋求技術上、題材上、遊戲企畫以及行銷上的突破。

突破的關鍵在觀念!觀念不變,我們只會深陷紅海!」遊戲橘子前集團營運長,有意思數位人文執行長沈秉文,在離開橘子後,計畫用三年的時間,帶領新團隊開發「紐約說話島」。這款全新概念結合線上遊戲與英語學習,無疑會對傳統語言學習的市場產生重新洗牌的效應,並宣告一個e-learning 3.0 的世代即將來臨。

華人語言學習產值大 線上遊戲新藍海

線上遊戲既是休閒娛樂也是學習利器。沈秉文表示,線上遊戲的黏著度創造出使用者長時間駐留的現象是很驚人的,可利用這個黏著度效應來達成很多有益的事。另一方面,他也觀察到華人市場對英語學習的龐大需求,及英語聽、說能力難以利用市面上的英語學習產品來達到有效提升的現實困境。如何開發讓師長及父母真正放心的學習性遊戲平台,如何善用孩童玩樂的天性與探索的本能,達成快樂學習的目的,正是「紐約說話島」思考的原點。

「紐約說話島」是結合線上遊戲菁英以及兒童英語教育專家,集合大家的智慧與經驗碰撞出來的火花,光是打造兼具遊戲與學習的產品架構,就讓這個團隊足足花了一年半的時間,實驗過三個版本,最後打造出「紐約說話島」以全3D 紐約場景建構出類母語的學習環境,具奇幻風格世界觀,透過有趣的劇情串聯起小朋友們生活美語的互動學習。

傳統線上遊戲藉由科技構築了一個或瘋狂、或美好、或多變的虛擬世界,玩家在虛擬世界裡可以有不同於現實環境的新鮮體驗,不同的社交圈,盡情釋放隱藏的個性和壓抑的情緒。這是線上遊戲的魅力所在。但是,在真實存在的世界裡,大部分的線上遊戲玩家一樣無力面對競爭壓力,更無力處理真實的人際互動。在「紐約說話島」裡,任務與升級都與英語程度有關,角色等級就是玩家學習後的英語競爭力。除此之外,更藉由規劃網頁親子互動平台、實體體驗館的生活體驗課程,虛實相輔,找回人與人、親子間互動、互信的溫度。

語音行動學習機 創造科技業市場商機

硬體與線上內容服務結合的營運模式。iTune 與i Pod的緊密聯結創造出一個無人競爭的藍海。比較特別的是「紐約說話島」這個線上英語學習遊戲,將搭配一台行動學習機(複讀機+電子辭典+MP3+電子寵物),讓孩童可以藉由隨身攜帶的學習機不斷覆讀練習英文,透過語音辨識技術不但提高了口語能力,也能回饋到遊戲的角色等級上。下一代的行動學習機,將增加手機功能,這種硬體與線上服務緊密結合的營運模式,可望對國內尚未打開的兒童手機市場帶來巨大的商機。

要加強英語的聽說能力,讓孩子用說英文來玩遊戲,是遊戲企劃上與聲音技術上面臨的第一個挑戰。「紐約說話島」在產品架構中將VOIP與語音辨識的聲音技術與遊戲操控性結合,為了符合孩童聲紋特性與確保網路聲音通訊品質,技術團隊甚至重新撰寫聲音解碼器Codec,採用Server-Client的VOIP架構。

在遊戲性上行動學習機結合電子寵物機的概念,在離線時,把線上遊戲中所習得之字彙或句子與音樂、電子辭典與複讀功能結合,藉助行動學習機內建的DSP以及儲存裝置讓遊戲內容與學習者產生互動,讓學習具備遊戲與互動的樂趣。

上海成立營運籌備處 深耕中國市場

在課程內容設計要能寓教於樂也是另一項挑戰。如何在一個廣大、自由的虛擬世界中,設計一個可以讓學童循序漸進的自然學習又能具備遊戲節奏的內容以及如何讓遊戲的等級、經驗值與語言程度相結合,都是課程設計過程中需要被克服的問題。為了達到這些目的,課程編輯部門蒐集台灣與大陸各重點學校所採用的不同教科書與英語相關檢定考試的資料為基礎,結合台灣、大陸、美國與加拿大的資深語言教材編輯群及遊戲企劃團隊合力將課程任務化、趣味化與故事化,讓不同英文程度的孩童都能學好各階段的課程。

2008年年中,「紐約說話島」在上海櫻花園國小,針對中年級的學生進行每星期1.5小時,為期三個月的實際學習測試,平均高達96%的同學表示之後願意透過「紐約說話島」來學習英文,在遊戲趣味性方面則獲得100%的肯定,這段時間參與測試學生的英文字彙記憶比未參加的學生平均增加75個新字彙,英語聽、說能力方面平均晉升一級。本遊戲獲得校長、老師們及學生家長的一致肯定,該校更要求“紐約說話島”能成為下學期正式的學習課程。

根據2007年中國國家統計局統計大陸英語學習市場總值高達296億人民幣,保守預估到 2010年英語學習市場總值將達523億人民幣,台灣地區英語市場也有近500億台幣的規模。一款能同時獲得學校師長、家長、孩童大力支持的線上英語學習遊戲,未來市場的爆發力不容小覷。

對於現階段該公司發展的計畫, 除了透過上海國小學童的實際測試回饋給「有意思數位人文」在大陸西安研發團隊做為產品的必要修正外,上海也已經成立營運的籌備處,沈秉文表示在產品開發與營運上必須一開始即建立一個大陸在地的團隊,結合台灣的創意,大陸的在地資源,累積在地產銷的經驗深耕中國市場!

為下一步量產計畫鋪路 尋求行動通訊廠商異業合作

兒童,是展望世界未來的資產;教育,是打樁奠基的投資。溫世仁的千鄉萬才計畫協助中國大西部脫貧,透過網路的無遠弗屆打開希望之窗,沈秉文更期待能延續溫先生的理念,將知識建構於網路之上,而普及於兒童日常生活之中。未來這套產品引擎只要透過不同國家場景與不同語言課程的置換,就可以快速開發中文以及其他語言學習產品,成為多語系語言學習平台。

目前,「有意思數位人文」正在尋求適合的行動通訊等EMS廠商,為後續行動學習機量產的策略合作對象,而為進軍大陸營運市場,也計畫下一步可能將與兒童補教業者結盟,「紐約說話島」線上英語學習產品,預計2009年6月先行在大陸推出,屆時,「有意思數位人文」能否跳離線上遊戲市場窠臼,創新線上學習應用的新領域,我們且拭目以待!


圖說:「有意思數位人文」自行設計開發的PCD寵物英語學習機,內建複讀機、電子辭典、MP3與電子寵物功能,將為相關行動通訊EMS廠商帶來龐大商機。


圖說:擷取自「有意思數位人文」研發之「紐約說話島」遊戲畫面。

Oct 2, 2008

How to use RSVP Support for LLQ ?

假設我們要針對某個interface上的voice traffic使用LLQ設定保留頻寬,最大保留頻寬為512K,每一路語音保留頻寬為64K(per flow bandwidth reservation無法使用MQC來達成,勢必要使用RSVP的方式),我們可以這樣設定:

Router(config)# ip rsvp pq-profile ?
<1-1048576> Max Flow Rate (bytes/second)
voice-like Voice-like flows
<cr>

Router(config)# ip rsvp pq-profile voice-like
Router(config)# int s0/0
Router(config-if)# ip rsvp bandwidth ?
<1-10000000> Reservable Bandwidth(KBPS)
<cr>

Router(config-if)# ip rsvp bandwidth 512 ?
<1-10000000> Largest Reservable Flow(KBPS)
<cr>

Router(config-if)# ip rsvp bandwidth 512 64
<cr>

Distance vector versus link-state

Posted by stretch in Networking on Thursday, 2 Oct 2008 at 3:36 a.m. GMT

There are two major classes of routing protocol: distance vector and link-state. It's easy to remember which protocols belong to either class, but comprehending their differences between the two classes takes a bit more effort.

Distance vector routing is so named because it involves two factors: the distance, or metric, of a destination, and thevector, or direction to take to get there. Routing information is only exchanged between directly connected neighbors. This means a router knows from which neighbor a route was learned, but it does not know where that neighbor learned the route; a router can't see beyond its own neighbors. This aspect of distance vector routing is sometimes referred to as "routing by rumor." Measures like split horizon and poison reverse are employed to avoid routing loops.

Link-state routing, in contrast, requires that all routers know about the paths reachable by all other routers in the network. Link-state information is flooded throughout the link-state domain (an area in OSPF or IS-IS) to ensure all routers posess a synchronized copy of the area's link-state database. From this common database, each router constructs its own relative shortest-path tree, with itself as the root, for all known routes.

Consider the following topology.

Lab topology

Both distance vector and link-state routing protocols are suitable for deployment on this network, but each will go about propagating routes in a different manner.

Distance Vector

If we were to run a distance vector routing protocol like RIP or EIGRP on this topology, here's how R1 would see the network, assuming each link has a metric of 1 (locally connected routes have been omitted):

R1's view running distance vector

Notice that although R1 has connectivity to all subnets, it has no knowledge of the network's structure beyond its own links. R4 has even less insight:

R4's view running distance vector

Because they do not require routers to maintain the state of all links in the network, distance vector protocols typically consume less overhead at the expense of limited visibility. Because routers have only a limited view of the network, tools like split horizon and poision reverse are needed to prevent routing loops.

Link-State

Now, let's look at the same topology running a link-state routing protocol (in a single area). Because each router records the state of all links in the area, each router can construct a shortest-path tree from itself to all known destinations. Here's what R1's tree would look like:

R1's view running link-state

R4 has constructed its own shortest-path tree, different from that of R1:

R4's view running link-state

Although maintaining link-state information for the entire area typically requires more overhead than does processing advertisements only from direct neighbors, but provide more robust operation and scalability.