今年 COSCUP 2013 時候,總於又開始辦 Key Signing Party。其實過去幾年在 Debian Birthday Party 時,常常也會非正式的交換簽章。這是第一次比較正式的用 The ‘Sassaman-Efficient’ Method 進行。總共二十人參與,成效還不錯!

IMG_3787 gpg-20130808

過程中收到幾個朋友來信詢問問題,特地整理幾個 FAQ

金鑰過期時間 (Expire day) 是否要設定,要設定多久?
你應該養成設定過期時間的習慣。你不用擔心過期要重新建立新的金鑰,你可以延長過期時間後,重新送到 key server 上。這樣別人就會取得你新的金鑰。若你金鑰遺失或忘記密碼也弄丟 revocation certificate 的時候,過期時間可以告訴你的朋友這把金鑰已經不能夠相信了。請找你聯絡換把新的。至於過期時間,則看你有多頻繁使用 PGP,我個人設定六個月,純屬偏好。

記得生成 revocation certificate
revocation certificate 是當你的金鑰遺失或被竊走得時候,你可以宣告這個金鑰失效。所以請生一份出來藏好,然後千萬不要被別人偷走。
gpg --output revoke.asc --gen-revoke <keyid>
如何簽署金鑰?
若你使用 Debian 或 Ubuntu, 請安裝 signing-party, 其中有一個工具叫做 caff(1). 他會以提問方式將你所選擇的金鑰簽署之後,以郵件加密寄給該金鑰收件人。這麼做的目的是,我們當場於會場認證對方的姓名,但是無法驗證他的電子郵件。經由加密寄送的方式,可以確保他使用該郵件系統。

因此你不應該把簽署過金鑰直接送到 key server 上,而是加密寄給他。這樣就不會造成他可能冒用別人的郵件信箱。

如何接收簽名?
請將每個人寄給你的信件解密,取出新的金鑰簽章,匯入你自己的 GPG Keyring,然後把新的金鑰上傳到 keyserver. 如果你沒有上傳,其他人是無法知道你已取得簽章。

姓名識別
交換的過程,最常見就是大家都只使用音譯,但是一般的中文證件上不會顯示英譯。所以你必須攜帶護照,才能讓對方驗證你的名字。你也可以在產生新簽章的時候,在註解 (comment) 輸入中文姓名 (請使用 UTF-8),這樣會比較容易進行驗證。但是不要在 comment 寫一些亂七八糟,無益辨識的資訊

另外,臺灣的護照容許你使用 Alias Name, 不彷把常用的英文名字加入。例如我的護照上即有 “Rex” 為別名。

使用金鑰包裝套件的技巧
你若常常需要包裝套件,不妨新增一把 subkey。一般而言,你必須十分小心的藏好的你的金鑰,例如存在其他人無法存取的離線媒體上。但是身為一個 Debian / Ubuntu 開發者,你每天都需要簽署並上傳新的套件。金鑰藏在離線媒體其實非常不便利。

Subkey 容許你在沒有主金鑰 (Master key) 的狀況下簽名或加密,也可以隨時取消或更改 subkey. 因此你可以安全的把金鑰藏在某個無人知曉的地方,把新的 subkey 專門拿來簽署用。萬一出了狀況,只要註銷這把子金鑰即可,不用大費周章的重生一把新的金鑰。

敝人在 2013/08/04 於臺北國際會議中心舉辦的 COSCUP 2013 發表的一場演講,分享過去一年狂熱的從事登山運動中,使用的開放原碼軟體與公開資料等經驗。

開放街圖 (OpenStreetMap) 是一個由全球羣眾所共享、共治與共享的草根性地圖圖資,與傳統圖資的的差異性在於你可以主動輸入地圖資料庫,並在顯示時決定那些資料要顯示出來。例如開放接圖有志工輸入了高壓電塔,你可以在地圖上看到整條高壓電塔線路走向,提供了更多路線的參考資訊。又例如山友常常走過一些日據時代或原住民部落遺址,那些因為政治權力變遷而被取消或被統治者改名的地名,也可以在開放街圖重新被顯示出來,而不至於遭到遺忘。

開放街圖使用開放的授權,可以免費做各種運用。在這份簡報中,我介紹如何透過開放原碼軟體與工具,進行登山行程的規劃與分析,以及如何將開放街圖的資料匯出成 Garmin 可以使用的圖資檔,以便進行海外行程的時候,可以有基本的登山圖資作為參考。(目前使用 DEM 圖資精度只有 90m)

進一步瞭解 Open Street Map 請參考 2012 開放街圖研討會。

利用 COSCUP 2013 的會後時間,舉辦 Key signing party[1][2]!

由於開放原碼社羣十分分散,難得有機會面對面,為了方便合作以及增強遠距聯絡的可靠性,我們可以利用實體聚會的機會交換並簽署 PGP 金鑰,以建立 Web of Trust[3]。這組金鑰除了便利確認身份,也可於通訊中加密訊息,避免各國官方政府日漸加強的網絡監視。

參加活動

產生一組 RSA 4096 bits 以上的金鑰[4],並將該金鑰送到 pgp.mit.edu.
請在 8/2 日前於表單[5]中提供你的電子郵件 (UID)、Fingerprint. 請你於 8/3 準時到達現場,並攜帶可信賴的有照證件以及一枝筆。

報名網址: http://bit.ly/16r2qJc

活動時間

請於 2013/08/03 第一日最後一場演講 17:20 結束後,於一樓東大門大廳 (鳳凰雕塑) 會面。
請跟主持人索取金鑰列表,檢查你的個人資訊,並依照對照表的次序排成隊伍。

其他注意事項

請勿簽署你未曾謀面的人的金鑰,請仔細檢查對方的身份證件以及個人簽章後才正式簽署。
請勿攜帶電腦於現場進行簽署。

此活動非 COSCUP 團隊發起,請聯絡主辦人: Rex Tsai

[1] https://en.wikipedia.org/wiki/Key_signing_party
[2] http://linuxreviews.org/howtos/gnupg/signingparty/
[3] https://en.wikipedia.org/wiki/Web_of_trust
[4] http://wiki.debian.org/Keysigning
[5] http://bit.ly/16r2qJc

這只是一篇個人感想與經驗分享,提供一些幕後經驗與感想給來年工作人員參考。COSCUP 2010 會後總結文與活動數據,將另行發布於 COSCUP 官方 blog.

9/26 傍晚召開過 COSCUP 檢討會議,這應該是 COSCUP 2010 最後一次的實體會議,接下來就是推坑明年總召跟 COSCUP 2011 的籌備會議了吧。檢閱了一下今年籌備過程中的疏失,以及可以改善的地方。比照去年慣例,又是一篇長達 12,951 個字的檢討文,整理出一百條檢討事項。

回想自己花了比原訂更多的時間的籌備活動,除了原本接下的募款工作外,五月起,也兼任總舖師 (Chief Operating Officer) ,分擔總召 Jouston 的工作,擔負起籌備大食團的工作。實質包含了實際規劃、執行,以至於工作時間爆增,投入了比預期中多出許多的時間,但能夠與一群熱血的同伴一起不求報酬的籌辦大拜拜活動,能夠稍稍的將心中的熱血感染給其他人,時間上的投資也算划得來。

參與 COSCUP 事前絲毫不敢妄想投稿演講,活動第一天也戰戰兢兢保持待命狀態,但團隊志工表現傑出。到第二天就已落下手機與無線電,愉快的待在會場內聽完一兩場議程。

回頭來看一下今年的工作紀錄,從一月起個人總共投入在籌辦工作已超過 650 小時,從比例來看算是今年的主要工作。雖說最後活動順利舉辦,但其實不能說自己成功的完成任務,籌備過程中遇到許多挑戰與困難,個人更有許多值得反省與檢討的事項。

但與其說遭遇挫折,不如說體驗了一場很有趣的旅程。本文略談今年籌備時期所遭遇的幾個挑戰,以及參與過程從所有志工中所學習到的心得。

挑戰一、設定活動規模

依照往年慣例,COSCUP 到了第五年已經連年成長,繼去年短短時間內 450 人報名後,COSCUP 2010 一開始就預期會繼續成長,甚至總召也喊出要辦到七百人以上。

Jouston: 「話說回來,若是可以辦到700人以上,我就在2010慶功宴上倒立做伏地挺身。」 —2009/08/24, 3:00AM (GMT+8)

這個目標設定一開始就造成很大的經濟壓力,為了維持社群大拜拜的傳統,希望盡可能避免一切造成會眾不願出席的門檻,包含報名費、地點、交通、食物等。

又 COSCUP 幾乎不(願)仰賴公部門資源,於是便必須努力從私部門中取得贊助。年初時,概估一算總預算恰好破百萬。已經算不清活動一開始時,有多少人質疑我「嘿,COSCUP 真的募得到這麼多錢嗎?」我也只能苦笑說「盡力囉。」

募款的工作就是要將 COSCUP 賣掉,雖然已經有往年建立的信譽與人脈,依然必須端出好菜才行。為了成功煮出一桌大拜拜用的好菜色,議程組工頭 BobChao 與總召 Jouston 的協助之下,議程跟銷售組在年初就定下了整個活動的主題為 HTML5,並依照這個主題拉出幾條議題主軸。

正巧到年中時,相關技術與發展受到大量關注。幸運的是,贊助商頗能接受類似的會議主題,議程組跟銷售組又能妥善的調整商業議程與一般議程的三分之一比例,並積極與贊助單位講者協議演講內容。雖說為了銷售,略為調整了議題結構。但會後的聽眾問卷回應,仍相當正面。甚至今年獲選為最受歡迎的演講是贊助單位的演講,而不是社群演講!

為了能夠順利達成總募款目標,不得不調整了各等級額度,也因此募款期間,也受到贊助單位的壓力,質疑贊助金額上漲。

所幸各長輩最後仍給予大力支持,最後的募款成績高於原訂目標,更滿足了為來年留下籌備基金的額外目標

挑戰二、國際合作

今年比較特別的是與國際社群 GNOME.Asia Summit 主辦。起因是一月底、二月初 Lloydagauipingooo 等人到北京探訪當地社群,認識了 GNOME.Asia Summit 的主辦團隊,於是帶回了資訊與一份會議記錄。在團隊的內部進行討論 (Jouston 因工作請假, 二月期間由我代理總召),經過了一整個月的探尋與遊說,在團隊有餘力不反對的情況下,於 2/25 正式通過爭取協辦 GNOME.Asia Summit 。由 pingooo 草擬一份提案書,並在四月初提交給 GNOME.Asia Summit,到五月初收到 GNOME.Asia Summit 籌備單位回覆同意合作。

而 COSCUP 本身的募款與宣傳已經從四月啟動。顯見決策延遲造成時間不足的壓力,且國際合作這件事情對團隊的溝通成本造成很大的負擔。除了相對應的責任與義務外,雙方團隊的採取不同語系的溝通方式,也對 COSCUP 團隊內部疊起一層溝通的屏障。考量於 COSCUP 光工頭與總召 (小組負責人) 就十三位,論壇上超過百位訂閱者,加上實際參與團隊成員約五十幾位 (活動時成長到九十位),並不是每一位都能夠有效的理解英文訊息。

然而語言障礙並不是主要的瓶頸,更大的挑戰是籌備團隊間必須依據每個討論細節協議出共識或對價關係,並且讓團隊成員遵循且完成工作目標。國際合作時,除了語言門檻,更要小心因為文化價值觀的差異,使對價關係的錯誤設定或誤解。這會造成一連串的誤解、爭執,最後要花費更多倍的時間與精力收拾。

挑戰三、報名大爆滿

有鑑於去年在 4 小時 7 分 39 秒報名額滿的盛況,團隊其實已經預期今年也可能會秒殺。為了維持大拜拜的對談水準與出席人口比例,今年引入了報名保留碼策略,目的是避免報名額度被新人瞬間搶佔,於是開發一新註冊系統,目的是暫時保留歷年講者與幾位社群中意見領袖的報名額度,以免平時工作忙碌的大神們一閃神就來不及報名參加。大神們缺席的會議就不算是大拜拜了,不是嗎 ? 😉

事實證明,報名程度相當踴躍,超乎團隊預期之外。以至於新報名系統碰到預期以外的,短短八十五分鐘內,系統接受了 1282 份報名,而原本規劃首波報名名額只有 610 名。根據計算,原 610 名額度在開放報名第十六分鐘時即應宣告額滿。

為了能夠盡可能滿足報名朋友的期待,團隊在一週左右盡可能的想辦法解決場地資金線上轉播的問題。擴大規模,對於預算規劃產生相當大的衝擊,進而影響資源分配,無論是工頭群、國際籌備團隊,都因此受到相當大的壓力。

備註: 雖然是新報名系統大爆炸,但是由於報名程度過度踴躍,使用其他解決方案並不保證不會發生其他問題,據經驗每年系統報名都有或大或小的問題。 2010 報名爆炸比較是甜蜜的負擔。

啟發與收穫

尋求動機

COSCUP 是一個完全由志工所組成的團體。

有別於企業團體,志工並沒有金錢利益的動機。他們更可能是因為人際關係、熱情或純粹興趣而加入志工團體。管理志工組織與企業組織上的技能看似十分類似,但是實質上管理者若無法識別他人的驅動力,很容易就會讓其他人失去繼續參與的動機

舉例而言,不少人的管理方式,是透過將自己的焦慮強加給其他人,利用焦慮迫使別人產生壓力完成工作。這種方式很自然的會演變成負面管理法,手上只有鐵鎚,眼中只有釘子,以懲罰為激勵方式。懲罰,很容易摧毀心理性或社會性的成就動機。在企業組織中,你仍有薪資、獎金、升遷可以作為誘因,在志工軟體中並沒有這些誘因。你得學會看清楚除了金錢報酬外,人還有甚麽樣的成就動機

一旦認清識別志工的行事動機,你很快就會了解自己的角色是協調者,而不是管理者。你很難「指派」工作給你屬下志工,取而代之,你必須藉由溝通了解他們承諾與能力,你依照他們的承諾與能力設定目標,給予挑戰,把工作委任給他們,而不是把工作傾倒 (dumping) 給他人。設定「目標」、「死線」、「後果」並施予其「尊重」、「責任」、「權力」與「挑戰」,這稱為「授權」。

一旦你把事情順利委任給其他人,你就可以只管理「協議」而不是管理「人」。取得「協議」,你就能推算團隊能力。掌握團隊能力,就不會做出過度承諾。不過度承諾,就不至於產生壓力。沒有壓力,志工才能開心貢獻。

異中求同

當計畫成長到如 COSCUP 2010 的規模時,除了志工團隊外,你還得照顧贊助單位、聽眾、合作組織對於活動的期待,凝聚共識是最難的一件事情,意見整合成為協調者最主要的工作。

首先,主辦單位對於贊助單位是對價關係,團隊得交付在贊助徵求書中所承諾的事項,小從企業商標露出,大到攤位佈置,每一項都得傳達給執行的志工,讓他們遵守,且贊助單位對於活動各有不同的期待,有人希望找到員工、有人希望宣傳新產品、有人希望大量曝光,這些微小的差異也會影響團隊該交付的成果。

許多聽眾也對於活動有高度期待,從議程安排、飲食到網路配置,幾乎每一年都會收到不同的評語與建議。即便是團隊本身,也會因為每小組手上的 (人力、預算) 資源有限,對於完成目標的定義不同。或者主辦團隊間,也會抱持不同理念甚至堅持不同的基本教義。

無論對外、對內而言,異中求同都是最重要的一件事情。你能做的只是盡可能找到所有目標的折衷平衡點。

你必須了解的是,團隊是義工組成,大家是義務性來幫忙,也會因為每人的時間與精力有限,有人可以使命必達,有人則只被動做到恰恰及格邊緣,這兩種態度造成工作表現的差異,也很容易讓小組甚至整個團隊,落入負面的工作氣氛。負面氣氛是團隊合作的殺手,缺乏熱誠的協調者不會啟發其他人朝共同目標前進,或者甚至連共同目標都沒有,小組人員很容易落入瞎忙而且沒有援手的悲苦狀態。

人在不同的生命階段,心中對於工作、家庭與社會工作都有不同的優先值,在稍大組織中都難免有採取不同優先值的同事,你唯一可作的是避免負面態度擴大感染其他人,避免其長成團隊中的毒瘤。

異中求同的唯一辦法是大量溝通,事實上每一次的溝通都是一場談判與交易。但你不能保持著 “My way or the highway” 的態度,聆聽是第一要務。談判的目的是解決問題,而不是爭辯立場。團隊合作最忌諱「不合我意、一走了之」的工作態度,敞開心胸不隨意放棄談判,論事只針對事實與風險討論,不談假設性問題,就有機會達成共識。應該避免盡可能避免極端的商業談判行為,避免不求一切手段達成交易,無論是拿出拳頭或向人跪服。

練習利用文字表達你的立場與溝通技巧,會有很大的幫助。

有效溝通

由於 COSCUP 2009 相當成功,在 COSCUP 2010 年中加入了相當多新血,這麼多熱血朋友加入的狀況之下,溝通過程與去年比起來顯然更顯得熱鬧。根據統計,從 2010 年一月到八月,COSCUP list 平均每月有 922.5 封電子郵件,平均單日有 30.75 封,其中瘋狂的幾個月份時候如七月,單月就達到 1430 封信件,這還不包含工作小組間的私有 list 流量。

每封信花一分鐘,每天至少就得花上三十分鐘。顯然不是每個人都可以讀完信件,更別說理解別人所要表達的意見。你得想辦法有效率的引導出結論,並執行它。

除了主導事情發展的工頭以外,許多新加入的志工也有相當多建議,作為協調人,不能只管工頭的意見,也要回應新人的提議。另外則是對想法的執行程度與所需資源,缺乏概念,以至於偶爾會有天馬行空的「幻想」出現。但大體來說,都是為了能夠成功的舉辦好研討會。但是你必須盡快掐死無法達成的幻想,以免團隊精力內耗。

團隊中,許多朋友都是首次加入,由於缺乏默契,時常對於責任的認知不清楚,偶爾會有掉球或者不敢斷下決策。你必須給予授權,新人不見得第一次就能把事情作對,難題是得適當的預留犯錯空間,讓他們嘗試,就算失敗了也無所謂。

另外一個問題是,難免團隊中會有「戳樂」的存在。你看不出他們有甚麽貢獻,除了在忙亂的時間出來戳你,或者會議期間永遠拿信仰來酸你所做的任何決定,卻不拿出實體的建議或提案,這些人是麻煩,請參考「來亂者,去死!!」管理他們。

你需要練習管理大量的電子郵件,並寫出容易快速消化理解的商業信件格式,避免透過郵件處理一些無意義的統計、問卷事宜,提高每封信的可讀性與價值。

壓力管理

由於專案具有目標,完成目標或多或少會產生壓力,志工軟體的主要壓力來源是過度承諾,承諾了能力不可達的事情、死線。個人壓力很容易因為逾期未完成而影響團隊,進而影響團隊氣氛,久而久之整個團隊中就會瀰漫著高壓氣氛,直到有一天大爆炸為止。

重點在於一開始不要逼迫志工過度承諾,觀察他們的時間規劃與能力所及,提供他們所需的環境、人力與資源。但相對另一方面,你又得鼓勵他們往團隊目標前進,試圖平衡各種資源很能夠考驗你的智慧跟溝通能力。

但無論年紀或工作經驗多寡,人們總是會或多或少高估自己的能力,面對壓力也常有不同的反應,有些較為幼稚的人可能會以「哭鬧」、「忽視」、「卸責」、「逃走」來面對壓力。

當然,成人不像小孩子一樣,會直率的攤在地板上宣洩情緒,但你依然可以從他們的行為反應中看出。你得練習觀察壓力根源,並試著了解並化解壓力,避免爆炸發生。

有時候一個人無法達到他的承諾,會影響其他人的時間,結果造成連環爆炸。如果你真的無法解決壓力根源,最糟的狀況是你得把他們踢進防爆筒中,但這麼一做,無論如何都會對團隊造成嚴重傷害。

成功的領導者不會落入擔任救火隊的工作。

協作工具

COSCUP 是虛擬團隊,成員散佈南北,絕大部分的決議都是在網路上討論與決議,有效率的利用線上工具成為基本的技能,各小組間也建立自己的溝通方式與協作模式。以下是本次籌備過程中,最常使用的幾個線上協作工具

  • Google Groups, 提供主要的論壇,發布所有待解決事項、問題。
  • Google Sites, 提供整合性的討論串目錄。(但最後被瘋狂的資訊流給打敗了)。
  • Google Document, 具體提案文件、大量利用試算表與表格收集資訊,活動最主要的時間表 (time frame)也利用表格管理。
  • IMs (MSN, Google Talks, Skype), 小組與工頭間的即時聯絡方式。
  • EtherPad, 「真」即時線上共筆,線上會議記錄或即時文件撰寫。
  • Dropbox, 設計素材與簡報儲存。
  • Webex, 小組即時電話會議。(收費)
  • Mumble, 小組即時語音會議。
  • IRC, 小組對話室。
  • Wikidot

由於溝通郵件眾多,總召或總舖師必須手動管理主要的 issue list,造成額外的管理負擔,或許來年可以考慮整合 Request-Tracker,將郵件討論自動整合入 issue tracking system。另外,今年也曾經嘗試架設 IRC 會議記錄 Bot (Mut IRC Bot, MeetBot, MootBot),如果能夠成功導入這些工具,未來線上會議與會議記錄就會更加容易了。

參考資料

上述啟發是這趟旅程的經驗收穫,或許這次做的不夠好,相信下次會更進步。

在這趟旅程中,我認為以下這兩本用字淺白且精簡輕薄的管理書籍,很能夠隨時提醒自己一些基礎的管理技巧,特別是激勵、授權給其他人的方式,推薦給來年的工頭與總召參考。只要你能夠協調管理一個志工組織,相信管理企業團體絕對不是問題。

但就像 100 Ways to Motivate Others 一書開頭簡介所言,不要輕信書中所提的建議,你必須親自從實務中嘗試。建議你,加入 COSUCP 團隊!成為熱血的工頭或總召!並身體力行的接受挑戰吧!

Rex's presentation on OpenWRT case studies 這是連續第三年上台在 COSCUP 分享 OpenWRT 相關的經驗,前兩年談得是基本的使用、或是稍微進階一點修改韌體給一兩百人的研討會使用,稍微還帶到一點技術。

今年的分享,試著想要切合研討會的「Open source friendly hardware platform」的連續議程的主題,切成兩部份,一部分是 OpenWRT 偏商業應用與分析,分析過去一年來在網通市場的生態系統中,不同層面的廠商各用了甚麽樣的策略與方法去應用 OpenWRT 這套開源的系統,並且對業務與市場可以有甚麽樣的幫助。第二部份,則請在網通代工廠工作的 macpaul ,分享從網通廠工程師的角度,以 OpenWRT 做開發的實務整合經驗與效能結果。

我的簡報可於下載,macpaul 的部份可於觀看。全程演講之錄影也已經上線。有任何問題,歡迎與我聯絡,或留言於此。更歡迎在網通產業的前輩給予指教,特別是國內網通廠或 SoC 晶片廠對 OpenWRT 的態度與看法。

This is my third time to share my experience on OpenWRT project at COSCUP. The last two year I have shared the basic usage and software framework of OpenWRT, and also my experience to customize the OpenWRT firmware for open source conferences for allowing more then 100 people get connected with wifi in single room.

This year, I like to line up with the track ‘Open source friendly hardware’. So with another speaker Macpaul, we split the talk into two parts. The first part is presented by me, talked about how the industry use OpenWRT in their products, and how OpenWRT can do in the ecosystem. I tried to analysis how the strategies work on the business and marketing. The second part is presented by mapcual, as a OEM vendor engineer, macpaul shared his experience on day-on-day router firmware development, and the performance of the OpenWRT software stack.

At the beginning of this conference,  we were thinking about invite the core developers of OpenWRT project. But due to the limit of the event funding, the team can not afforded the ticket and hotel for trip of speaker. Hope, next year we will have opportunity to invite the core developers from the other country.

Photo is taken by Jim Grisanzio, The best photo of my talk I can find on Internet. Thanks! Jim.

本週末即是一年一度的開源人年會,記得去年陸續辦過 OSDC, Blog BoF, COSCUP2008 文化與科技國際博覽會 (Culture Mondo Network) 等。有時成功、偶爾失敗,但是大多失敗的問題都是頻寬不足,像是 Blog BoF 第一次只用 8M/640K Hinet ADSL 寬頻,碰到大流量的 Y!Live 視訊就被衝爆了,雖然 Y!Live 已經收掉了,但是現在 High-definition video 的視訊串流網站也已經變得相當普及,萬一演講太無趣,大家都上線看 Youtube *誤* 那也很有機會爆掉。

記得 2008 文化與科技國際博覽會,在展場與主會議廳各拉一條中華 10M 光纖,使用上倒是沒有甚麽大問題,倒是因為 WiFi 的流量限制較嚴格,某些聽眾想即時上傳視訊影片到外部網站,造成了一些問題。剩下的一般網路瀏覽、Skype、讓 im.tv 做即時視訊轉播,又再現場同時開兩台播出都沒有大問題。(當然也可能是因為這個博覽會的聽眾比較不需要即時網路)

今年四月的時候,又當了一次 OSDC 的義工。今年 OSDC 的是使用台灣微軟的會議室七樓會議室 (對,參加開放原始碼軟體研討會,卻在小便斗上看到微軟的催眠文宣貼紙,的確有點奇特的趣味),這次雖提早去了一次場勘,但是礙於政策或麻煩等種種問題,微軟只能提供分別於內部網路外的一條 2M/256K 的中華電信 ADSL 線路,對於我們所提供會有大量的使用者上網的需求,相關人員露出了納悶與不解的神情,直說其實大部分微軟的聽眾都自備 3G 搞定啊,為何需要額外架設無線網路。且若要使用現成無線網路,尚需要額外申請大量帳號。於是,就在半脫半就的狀況下用了 2M/256K 的線路提供大約兩百餘聽眾的會場網路。

下場當然不會太好看。頭一天是 Tutorial, 因為人數不多,因此網路頻寬的流量使用率還好。但是驚爆一個問題,原來接進會議室的上游是一台 D-Link 的 DI-704P 寬頻路由器 (直接接到神秘的內部網路孔去,只好透過 nmap/telnet/mac address 辨識),這台機器只要超過 1K connection sessions 就自爆,剩下的連線都死光,很有可能是因為還接了其他網路或設備,造成可容納數下降,無法察知。

於是當日結束後,請微軟的網管協助,希望直接將 DI-704P 的 WAN 網路線直接插到該孔,如此我們就可以用自己的設備自行撥 ADSL 的 PPPoE 出去。很妙的是,沒有人知道這台神秘的 D-Link DI-704P 接到哪裡去,找不到機器、也找不到線。於是第一天下午結束後,在 gslin, XDite, slzzp 及其他大神的建議下,趕快生了一台有雙網路卡的小電腦出來,裝上 Debian、OpenVPN、shorewall,從微軟的中華電信 ADSL 開 tunnel 到台灣大學,繞過該死的 D-Link DI-704P。這也是為甚麽大家從微軟上網,出去的 IP 卻是台灣大學。這樣算是解決了 DI-704P 自爆的問題。感謝 gslin, XDite, slzzp 及其他朋友當日空著肚子陪我測試最後效果。

不過 2M 的水管根本不夠大家用阿,上線的人數大約是 40-60 人,完完全全不夠分。於是只好開始

  • (在微軟會議室)擋掉頻寬吃最兇的 Windows Updates Services
  • 擋掉 Debian/Ubuntu mirror site. (造成一些人在外面想測試、安裝新軟體,卻完全連不上)
  • 最後一天下午,已經沒法子了。只好把 transparent proxy 設起來,除了講者之外,其他人輪流斷 Web Access,會看到小水管不夠用的畫面)

很苦。另外也碰到一個問題,就是現場其實有一台 SMC SMCWBR14S-N2,是微軟拿來開放給聽眾使用,因為我已帶了自己的設備,於是打算將他拿來給講者專用。由於原始的設定都是出廠預設值,於是改了密碼、訊號名稱,以及加密方式從 WPA 改為 WEP (為了擔心有講者拿了太舊得電腦連不上),但是在第三天早上劉燈與 David Heinemeier Hansson 做 Video conference 時,將所有的自有 AP 都拔掉,剩下 SMC 這台。但是網路卻很巧妙的每次等劉燈問完一個問題、回答到一半的時候,就斷線了,連續試了幾次,每次都要再補充說明一次,大家都有點失去耐心了。這個問題因演講進行中一直沒有機會辨識跟解決,無法察知是 SMC 的問題、抑或又是 D-Link DI-704P 的異常。(SMCWBR14S-N2 乃直接接到 DI-704P 上)

一些下次可以注意的細節

  • 應該要監視流量與使用頻率,這牽涉到網路佈署的 topology 。不過若能收集這些資訊,對未來改善研討會的網路環境會很有幫助。
  • 要有心跳 (heartbeat) 監視系統,更好是超過時間未收到心跳,則發簡訊通知。
  • 若使用現場網路設備,更改掉預設設定還是必要得。預設密碼、UPnP 等都要更改、關掉為佳。開源研討會,特別有高手會動手動腳、玩刀弄槍的 😉 。當然、無必要的話,就不要用沒測過的設備來玩。
  • 講者若需要使用視訊、網路電話,無論如何再怎麼機車都要麻煩講者與大會提早測試一遍。

今年 2009 開源人年會將再次租用台灣大學應力所與台大電機博理館,今年籌備團隊特別注意台大的網路是否又會拿週末的時間來進行維護,除了上網看電算中心公告,也請教了內線消息,所幸到目前為止都還沒有這樣的網路、電力的維護安排。今年 COSCUP 人數光聽眾就高達 550 人,希望今年乖乖大神保佑,不要出事阿。

(這篇文章因為事隔數月,可能人名或事項過程有所差異,若有誤記請指教並請見諒)

D-Link DI-707P