陌陌運(yùn)維主管:我們是如何搞定600+設(shè)備的初創(chuàng)公司辦公室網(wǎng)絡(luò)環(huán)境的

0 評(píng)論 3800 瀏覽 6 收藏 10 分鐘

屈指一算,陌陌已經(jīng)兩歲多了。一個(gè)兩歲的小屁孩也已經(jīng)背起書包上學(xué)背英文單詞了,兩歲的陌陌也正在創(chuàng)業(yè)的路上越走越順。回頭看看這一路,不容易啊。遙想當(dāng)年那只有四五臺(tái)電腦,60 平米左右的辦公室,再對(duì)比現(xiàn)在一人手持四五個(gè)移動(dòng)設(shè)備,1000 平的高上大 CBD 寫字樓,些許感慨。

當(dāng)年那個(gè)60 平米的小辦公室,大家上網(wǎng)辦公依賴的是一條4M的不對(duì)稱企業(yè) ADSL。所謂的不對(duì)稱,指的是上行下行速率的不相等,也就是,我下載能達(dá)到 4Mbps,但上傳只有 512Kbps。很多人認(rèn)為上傳不重要。設(shè)想一下,一個(gè) 10M 的陌陌APP,要上傳到服務(wù)器去,只能以 64K/秒 的速度上傳,這個(gè)還是理論。一個(gè)人單獨(dú)只用整條線的最快值,需要時(shí)間兩分半。相信現(xiàn)在家庭用的XX光纖入戶都比這個(gè)要快了,當(dāng)時(shí)整個(gè)陌陌的所有員工都在使用這條小水管。

后來,我們的辦公室搬到了環(huán)境宜人的別墅。同樣是ADSL(當(dāng)然,帶寬是擴(kuò)大了)陪我們度過了這段溫馨的時(shí)光。再后來,也就是現(xiàn)在的辦公室,急速增長(zhǎng)的員工數(shù)量和比之前大十倍以上的辦公室,終于讓我們正視這些問題了。我們需要一個(gè)能滿足數(shù)百設(shè)備的有線無線辦公室網(wǎng)絡(luò)環(huán)境。

首先,我們看看一個(gè)初創(chuàng)移動(dòng)互聯(lián)網(wǎng)公司所面臨的問題:

 

1)眾多設(shè)備的有線無線上網(wǎng)

2)各類下載加速

3)爬籬笆

陌陌的辦公室上網(wǎng)使用的是大廈提供的寬帶上網(wǎng),從大廈端給我們的就是一根普通的網(wǎng)線,我們只要插上網(wǎng)關(guān)服務(wù)器(關(guān)鍵角色,將在第二部分詳細(xì)介紹),配置上大廈分配的IP就可以使用了。關(guān)于有線上網(wǎng),都是實(shí)打?qū)嵉臇|西了,有多少個(gè)網(wǎng)線口,就得有相應(yīng)數(shù)量的交換機(jī)端口。我們選購(gòu)了一款性價(jià)比超高的 N 家的交換機(jī),24 口千兆,只要不到 1000 的價(jià)格。這些交換機(jī)以級(jí)聯(lián)的方式連起來,然后擴(kuò)展也比較方便,辦公室需要擴(kuò)工位時(shí),就繼續(xù)買交換機(jī)來級(jí)聯(lián)。

好了,說完有線,我們來說說比較關(guān)鍵的無線。作為一家有態(tài)度的移動(dòng)互聯(lián)網(wǎng)公司,一個(gè)員工的桌子不放上那么五六個(gè)移動(dòng)設(shè)備,都不好意思說在陌陌工作。作為一個(gè)腦殘果粉,在這里就不選擇 C 家的瘦 AP 了,而是直接選擇了 Apple 的 Airport Extreme 。Apple 的 AE 其實(shí)是一個(gè)路由器,但是我將其當(dāng)做一個(gè) AP 來使用,只是負(fù)責(zé)建立無線網(wǎng)絡(luò),關(guān)閉 DHCP ,以 Bridge 的方式與網(wǎng)關(guān)相連。而之所以不選用 C 家的 AP ,則是考慮到 C 家的 AP 其實(shí)也不便宜,能達(dá)到和 AE 宣稱的理論最多 50 個(gè)同時(shí)接入的 AP ,甚至比 AE 還貴。

陌陌的辦公室并不是一個(gè)大開間,而是一個(gè)類似“回”字的形狀(中間是電梯)。辦公室的布局,與路由器的擺放有直接關(guān)系。我們當(dāng)前布置了 11 個(gè) AE ,平均每個(gè) AE 連接了 30+ 個(gè)用戶。只廣播一個(gè) SSID ,2.4G 和 5G 網(wǎng)絡(luò)都用同一個(gè) SSID ,不讓用戶選擇就是最好的選擇。整個(gè)辦公室就一個(gè) SSID,無縫漫游,即使用戶的位置移動(dòng)了,也會(huì)自動(dòng)尋找最近的接入。

用戶的設(shè)備支持 2.4 的就連接到 2.4,支持 5 的就連接到 5。眾所周知,大部分的 PC 和除了 iPhone 5 以上的手機(jī),都只支持 2.4G,而 2.4G 基本已經(jīng)擁擠得無法使用了。所以我們?cè)?Android Team 的附近,布置了3~4個(gè)路由,以保證它們還能順利上網(wǎng),但速度已經(jīng)無法保證了。另外,也不能太相信 AE 的自動(dòng)分配,必須手動(dòng)指定每個(gè)路由廣播的信道,以保證相鄰的兩個(gè)路由的信道不要重疊。

Apple 新款的 Airport Extreme ,支持 802.11ac ,理論上可達(dá)到 1.3Gbps 的吞吐,比一般配備的有線千兆網(wǎng)卡更快。最近,我們終于也入手了新款 Airport Extreme ,豪華的外型背后,卻是一個(gè)無奈的事實(shí):英雄無用武之地。現(xiàn)在支持 802.11ac 的設(shè)備真是少之又少,連去年的 retina MacBook Pro 都不支持 ac。

在這里稍微吐槽一下 Apple 的無線管理工具 Airport Utility 。6.0 版本不好用吧,Apple 自己也知道,讓 5.6 版本可以與 6.0 共存。但新款 AE 不能通過 5.6 進(jìn)行管理,而且系統(tǒng)升級(jí) Mavericks 以后,5.6 就已經(jīng)不能用了。Airport Utility 6.0 + 新款 AE 缺少了很多可監(jiān)控的選項(xiàng)。而 Airport 5.6 + 舊款 AE 是可以通過 snmpd 和 syslog 獲取一些信息的。

接著就是加速的事情。我們這里,有請(qǐng)一位關(guān)鍵角色出場(chǎng)——墨跡。墨跡是陌陌的No.15號(hào)員工,我們的賣萌總監(jiān)。我們用退役下來的黑蘋果,裝了一個(gè) Linux 作為我們的辦公室網(wǎng)關(guān)。為了紀(jì)念墨跡,這個(gè)機(jī)器的名字叫墨跡。墨跡在我們創(chuàng)業(yè)的初期,一路用賣萌來陪伴著我們加班的日子。終于在某一天遇到了一生中所愛,從此離家出走去追尋自己的幸福了,再也沒有回來了。我們沒有怪她的不辭而別,而是祝福她,終于找到了一生的歸宿。

我們也為此特別做了一個(gè)版本來紀(jì)念這位永遠(yuǎn)的賣萌總監(jiān)。下圖就是陌陌 1.9 的開機(jī)載入畫面:

墨跡上安裝了 Smokeping、Cacti、Ntop 等軟件,Smokeping 可以檢測(cè)辦公網(wǎng)到各個(gè)地方的網(wǎng)絡(luò)情況,Cacti 用于監(jiān)控整個(gè)辦公室的帶寬情況,Ntop 用于監(jiān)控辦公室每個(gè)人的網(wǎng)絡(luò)使用情況。

說回來加速。我們主要加速的內(nèi)容是,iTunes的APP更新,和 Testflight ipa 的下載。方法都是,在網(wǎng)關(guān)上面安裝一個(gè) squid,用于緩存 ipa,然后用 iptables 把下載的地址,指向 squid,讓 squid 緩存住 ipa。只要第一次下載成功后,就會(huì)緩存到 squid 上面,辦公室的其他人就因此受益了。更新速度都是唰唰的。

iTunes 的更新一直沒有使用 CDN ,直到今年初,App Store 的 ipa 下載使用了國(guó)內(nèi)的 CDN ,辦公室的 iTunes 加速的作用才沒那么大了。再到后來 iOS 7 發(fā)布后,這個(gè)就更不是問題了,因?yàn)?iOS 的新功能自動(dòng)下載更新,iOS APP 基本所有的更新都可以在大家睡覺時(shí)完成了。但 testflight 的下載仍然沒有 CDN 的,而且慢得令人發(fā)指,如果沒有加速,難以想象還有誰會(huì)去使用它。

作為一個(gè)從來不用百度的裝逼犯,表示絕對(duì)不能忍受一天不能使用 Google 。于是,爬籬笆成為辦公室上網(wǎng)的一個(gè)必備因素。同樣,網(wǎng)關(guān)是一個(gè) Linux 實(shí)在太方便了,我們?nèi)匀焕盟鼇碜鲞@個(gè)事情。原理就是,中國(guó)的IP走默認(rèn)的出口,而非中國(guó)的IP則走VPN的出口。

而中國(guó)的IP怎么獲取呢?從 APNIC 下載一份IP列表回來,把屬于中國(guó)的IP過濾出來。正如大家所知,全球的 iPv4 地址已經(jīng)早就分批完畢,所以這份列表的變動(dòng)性其實(shí)已經(jīng)不大了。即使經(jīng)常變動(dòng),一天更新一次也是沒什么問題的。

來源:36氪

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 目前還沒評(píng)論,等你發(fā)揮!