APCN-2 中断 & 海底光缆 101

作为互联网或者说全球性的物理网络中极其基础重要的设施,一直比较低调,很少会有人去主动关注他,他就像空气水一样的理所当然的被人习惯性的遗忘,导致出了问题才想到有这么一个事物存在,空气差了人们会想到开净化器带口罩,但是光缆中断了一般人还真没辙,比如前些日子 APCN-2 的中断,影响的不仅仅是 CN,包括 PH 在内的很多国家都受到了影响。
先说说 APCN-2 的问题。
亚太2号海底电缆(Asia Pacific Cable Network-2,APCN-2)是由 26 个投资机构共同发起筹建,连接亚洲国家和地区,全长约 19000km 共有 10 个登陆站,中国登陆站包括上海崇明和广东汕头。骨干路径由四对光缆组成,通过 Dense Wavelength Division Multiplexing(DWDM) 技术使得最大带宽达到了 2.56 Tbit/s,目前带宽应该是 06 年第二次升级的 280Gbps,每组光缆的传输速度达 640Gbps(10x64x4),采用具有自愈功能的环型网络结构。中国电信、中国联通均参与了此条海缆的建设。最权威的信息可以看这里

3 月 21 号 APCN-2 的 S4A(Chongming, China 到 Pusan, Korea) 发生了中断,3 月 24 号,S6(Tanshui, Taiwan 到 Chikura, Japan) 又发生了中断。 大致的中断位置可以看这里。由此因此了大面积的丢包也不足为奇。4 月 7 号终于恢复了


关于海底光缆是如何铺设的,Quora 上有几个科普性的问答:
* How are major undersea cables laid in the ocean?
* How would you go about laying undersea fibre cable?
* Do private telecommunications companies own the undersea cables that connect the internet across continents?
* What is the cost of laying high voltage underwater, sea or fresh, copper cable, dollar per meter or $/km?

上面的还看不明白?百字不如一视频,直接看 discovery 上的这个视频吧,这个纪录片描述了 Tyco Telecommunications 旗下的光缆铺设船 Tyco Resolute 铺设从 Costa Rica 拉一条光缆衔接到 Pan-American Crossing (PAC) 主光缆的过程。看到那么霸气的 monster,我还是蛮期望有机会上去呆两天的。

几家跟之相关的铺设海底光缆的公司,有兴趣的可以进去浏览浏览,看上去都是财大气粗型的:
* http://www.k-kcs.co.jp/english
* http://www.subcom.com/home.aspx
* http://www.te.com/en/home.html

Continue reading

机器与人

机器跟人是两个不同的物种,目前,我的工作 60% 跟前者打交道,剩下的 40% 会跟「五光十色」的程序员、产品、运营、市场等打交道(总算不要跟销售打交道了)。
总的来说,机器比人好管理好沟通的多,因为机器没有欲望,你让他怎么做他就怎么做。当然如果你对他不熟悉不了解就想强上,一般情况下受伤是你自己,所以如果不想出现一些悲剧性的后果甚至是灾难性的,因此最好需要花时间去熟悉,然后再驾驭。
不管是机器还是人,最终都是服务以及被服务的关系,比如 A 机器提供 API 给 B 机器调用,这个可以看成是一个 client/server 的模型,如果 A 机器出问题了,对于 B 机器这个独立的个体来说,最坏的情况是 crash 了,更普遍的情况可能会是 stderr 或者打 log,你可以通过调查这些蛛丝马迹发现 A 「不爽」的原因。

人就不一样了,第一人有欲望(除非你信佛教),第二众口难调,举三个亲自经历很有代表的例子:
1. 公司每天中午的饭菜,我从 11 年吃到现在,吃了三年吃腻了,有时闻到油的味道就不想入口,当然有不少跟我同等感受的同事;但是观察下来你会发现,还有一部分同事看上去吃的蛮香的,并且跟他们讨论下来,他们也觉得饭菜还不错。这个是一个典型的众口难调的例子,期望不一样,结论也不一样,这不是期望越高失望越大么。至于什么出去玩,你想去 A 地我想去 B 地的问题那就更多了。

2. 上面说的是日常生活方面的,下面说两个技术层面的,虽然跟我们的 production operations 关系不大,但是原理是相似的。

2.1. 11 年我刚去友盟的那会儿,兼职接手了当时新办公室内部网络部署的摊子,没钱没人,只能让着我们的行政小姑娘帮忙打打杂,花了半个多月的时间搞定,信心满满的给第二天要搬到新地盘办公的员工发邮件告知。后来总结起来发现这事面向的是普通观众,大部分人都是不懂 tcp/ip 的,包括众多的分不清 gateway 为何物的程序员,而我当时写的又比较的专业,设想的情况太美好不切实际,比如竟然想到通过静态 IP 而非 DHCP 的方式让每个人去访问网络,所以当时的反馈并不是很好,收到了各种各样有理的无理的回复以及善良的建议,接下来又忙活了接近了 1m,才终于解决了这个问题。后期又总结了下出现这个问题的原因:
* 技术层面也就是网络的实现部署太过理想化,所以面对的大众即使是工程师的环境,也应该使用 DHCP 而非 staic IP
* 其次,对我们的客户的信息的传递上,普通客户就应该使用普通朴素的语言,最好能 step by step 的截图告知怎么操作
* 另外一点就是在出现问题之前没有综合的考虑可能出现问题的各种情况,不然等真出现问题再考虑就有点晚了
* 非主观因素就是,你面对的是一大波的客户,那就更面临着被骂的风险,这个做运营的因该很有体会,尤其是专门维护公司 twitter、weibo 账户的同学,应该是经常能搜到客户的不满以及发泄的,所以,这事最终的结论就是自己先把份内的工作做好,先满足大部分人的要求,在时间精力允许的情况下,再去满足那一小部分人的欲望以及口味

2.2. 第二个是关于我们内部的代码托管平台 github enterprise 维护的事,这事也是我前几个月接手。然后做了两件事,第一个是把我们的 instance 升级到了最新的版本,这个完全没有影响,第二件事是出于安全的考虑,将原来的公网可访问变成了只有通过 proxy 才可以访问内网的方式。这事从技术实现上来说同样不大,换下端口改下 IP 就好了。我索性快刀斩乱麻,加上前期准备花了不到 3h 的时间搞定了所有技术层面的事情。比较麻烦的是在告知我们的客户,也就是所有的友盟员工发生了这件事的大致经过以及结果以及最重要的,对他们的影响。吸取了之前的教训,再加上处理多了这类事情之后自然就轻车熟了。所以在使用了很通俗的语言描述了访问方式变化之后,排除一些垃圾回复(完全 OT 的,自己机器原因无法访问的)得到的反馈还是很正面的。

总之,跟人打交道是门学问,尤其是服务一些吃力不讨好的对象更是如此,要解决这个问题,无外乎这几条路径:
* 尽量少动,专业术语叫少变更,不到万不得已,不要手贱去惹事,实在要做,做之前问下自己,真的要做吗?
* 准备好事后处理的艺术,正如我 2.2. 例举的那个案例一样
* 做完之后正确的区分合理不合理的反馈以及建议,对于不合理的甚至是扯蛋的反馈,有时间有心情就回复周知一下,没时间直接 mute 就好,你很难满足所有人的胃口
* 交给别人做,把自己从火坑里面解放出来,迎接下一个火坑的到来

总的来说,跟机器打交道很简单,跟人打交道相比要复杂的多,有的时候后者或许比前者重要的多。

蹦极

原本以为自己年龄大了,不敢玩这些「刺激」的活动了,可是在自己一颗按耐不住热血沸腾的小心肝再加上同事怂恿的驱使下,我还是站在了 68m 高的跳台上,跟工作人员确认了几次安全带系牢,双腿已经有些软掉的情况下,双手抱头纵身一跃,被接上岸的时候双腿真的软掉了。事后想想,¥200 只包含一份最多赔偿 ¥40, 000 的保险,万一不小心挂了,真是太死得不其所了。

总之,人生又少了件不做后悔的事,接下来可能就是 skydiving 了。

体验 Uber 打车

作为一名崇洋媚外,从业移动互联网,资深打车爱玩人士,Uber 在西朝鲜首都试运营当然要找机会去试试。
在那个阳光明媚,PM2.5 ~ 150 的中午,我在酒仙桥吃完午饭,拿起满是划痕的爱疯,打开了 Uber,看到周围不到 5 公里的地方停了辆奥迪 A6,满心窃喜,麻利的发起了 request,不到 15s,那头的师傅就跟我确认了我的方位,插句话,其实对方的位置都是实时的,司机能看到我当前的位置,我也能看到车的行动轨迹细微到掉头。

等了不到 10min,司机准确的停在了我等候的地方。上车,接下来就是跟预想的差不多了,说话语气,态度之类的的确一流,看上去师傅估计是会说点简单的洋文,不停的跟我说 OkeyOkey,这个在之前起步价 ¥14 的车子里面是从来没听到过的。车子宽敞,后座提供矿泉水,上车后师傅看我手机没电了还把充电线借我冲了会电。途中跟师傅随便扯,对他的印象就是一个靠拆迁富起来的土著早些年买了辆奥迪不怎么用再加上离休闲在家里没事做,人跟车都全了,于是就出来给 Uber 打工了;除此之外,司机的工资目前是按照天数发的,尤其试运营的这些天,从我观察的来看,其实活儿很少,据他说没活儿拉的时候就停在四环的宜家那边,很爽是不是。
全程大概 14 公里,中午不堵,开了不到 30min,到了目的地直接双方互评 5 颗星,全程无现金交易,通过预先绑定的信用卡结账。最后费用就是 14 的车子里面是从来没听到过的。车子宽敞,后座提供矿泉水,上车后师傅看我手机没电了还把充电线借我冲了会电。途中跟师傅随便扯,对他的印象就是一个靠拆迁富起来的土著早些年买了辆奥迪不怎么用再加上离休闲在家里没事做,人跟车都全了,于是就出来给 Uber 打工了;除此之外,司机的工资目前是按照天数发的,尤其试运营的这些天,从我观察的来看,其实活儿很少,据他说没活儿拉的时候就停在四环的宜家那边,很爽是不是。
全程大概 14 公里,中午不堵,开了不到 30min,到了目的地直接双方互评 5 颗星,全程无现金交易,通过预先绑定的信用卡结账。最后费用就是 ¥18 + ¥0.7/min + ¥3.85/km,最低 ¥30。回来收到了一封邮件,总结的不错。


总的来说,除了价格 double 之外,其他的没什么可以挑剔的。话说回来,Uber 的目标是不缺钱的商务人士,而非海淀区满空气电子化学气味的修电脑人士,我只是体验一下而已。

北京的水(纯水机)

说完了全国最大的农村人口集散地的空气,继续谈谈北京的水,这里说的是饮用水,不是满大街那种臭水沟的水。对北京水质表示堪忧是从电热水壶下面沉淀的厚厚的水垢开始的,这个肉眼能观察到的仅仅是由于硬水中的各种钙镁离子引起的,长期喝这种水据说会增加得结石得风险(我没求证)。再加上由于北京市内以及周边地区严重的污染(1, 2),使得我不得不考虑上一台净水设备。
转了几圈发现净水市场跟空气净化器市场一样,鱼龙混杂,噱头十足,混乱成什么样子了?连一根送水的管子都有普通的 PE 管以及 CCK 之分。这意味即使愿意花钱也未必能解决问题。为此,我周末花了两天时间查阅了大量得资料,对比各种家用净水设施得优劣,最终得出得相比之下"一劳永逸"的方式是买台 RO 纯水机。在深入调研过程中发现,那些动辄五六千的纯水机其实核心部件都一样,无非就是一根陶氏的 RO 膜(0.1 纳米的过滤级别,可以过滤掉所有的细菌,绝大多数的病毒以及金属离子),有的用的还是国产之类的烂货,这玩意儿的成本不过 200RMB,这跟空气净化器 HEPA 滤网一个道理。想想计算机系统里面的 cache,是不是觉得世间万物都是想通的。知道了这些不如自己组装一台 RO(reverse Osmosis) 纯水机了。
市场上的纯水机大同小异,无非是几级过滤是否自动冲洗以及 RO 膜的差别,其他的我认为都是炒作。最终,我的选择:
第一级:1微米 PP 棉
第二级:xx活性炭
第三级:1微米 PP 棉
第四级:DOW 50加仑 RO 膜
第五级:xx活性炭
50 加仑的一个储水 tank;自动冲洗;另外,把第一级的外壳换成了透明的,好观察更换。

一周之后,重达 15kg 的全套装备到货了,为此我花了两天时间,像这位大哥一样,一边看说明书一边学习安装。

记得用冲击钻的时候带上防尘口罩

由于厨房的供水系统比较老,需要改造才能使用,为此在房东的指导下,熟悉了几乎所有的五金工具,最终组装上架了一套纯水机。客观的说,放出来的水确实很甘甜,这个主要是最后一级滤芯的作用。


要维护这套设备也很简单,跟空气净化器一样,定期更换各级滤芯就可以,并且跟空气净化器比,成本低的多,尤其像 PP 棉、活性炭之类的,成本几乎可以忽略不计,RO 膜一年换一次,平均下来一天不到一块钱。
本次最大的收获是同时熟悉了木工以及水电工的基本操作,现在这类工种在加拿大很紧俏,学好五金基建移民有保障啊。另外,基本所有的纯水机都建议棉过滤层 2-3 个月换一次,不过从实际观察来看,我基本一天 50 加仑不到的使用量,一个月之后第一层 PP 棉的颜色已经惨不忍睹了,什么净化设备到了北京(中国有特殊的国情,北京亦然)都要打个对折,空气净化器设备(1, 2, 3)也是这样的。


06/08/2014:我家(江苏)也有一套同样的设备,肉眼观察,北京这边的连续用一个月一级过滤绵就黄的不成样子了,江苏的用了一个月颜色不过微黄,用两撒三个月问题应该不大。北京水的硬度确实很重。

一名 ops 眼里的互联网职业

在友盟干的这几年算是把半个互联网的主流职业摸的半生不熟,下面是从主观的角度写写我对这些职业的认识,熟悉的就多写点,不熟悉的就少写点,注意了,是主观。

1. CEO
最开始那会,经常是手机不离手,据说是为了看监控。半年之后,虽然手机依然不离手不过好像就不是看监控了。后来,基本见不到人了,好像要去见 VC 忽悠钱或者要去参加大大小小的会。偶尔过来问下,稳定不?为啥又挂了?最近没被黑吧?应该早财务自由,"follow your heart" 了吧。另外,各位想靠创业实现财务自由或者想买套房的也醒醒,具体参见 Quora 上的 《 What startup could make me a millionaire in four years if I got hired as an employee today?

2. CTO
最开始还能涉及些跟技术工程相关的细节,后来公司大了,工程师多了,技术实现也多了,五花八门,也不可能由其一人面面俱到。后来聊的最多的是三观问题,做这件事的意义以及不做这件事的意义,时间证明,他说的话绝大多数还是有道理的。除此之外就是批钱,买设备要批,买服务要批,打的报销也要找签字。

3. COO/CFO/CxO
这几个职位好像在我们这边没有,不评论了。

4. 财务
被卖了之后,跟其配合做了不少财务预算工作,看上去正规了些。最擅长的就是拖欠,还好没有拖欠员工工资。

5. 投资人
出钱的,这行业最初看上去是高大上,动不动就是百万千万的,后来了解的多了发现也是鱼龙混杂,有点钱的都可以做投资。年初被卖假货的电商 M&A 了,即使按照优先清算,感觉做天使的那家跟 A 轮的那家也拿不到多少钱。大致算下估算下范围,投资人能拿到多少,几个创始人加上早期的那几个人能拿到多少,其他的人就真没多少钱了,上面都是些公开的资料。

6. 律师
最初感觉是一群神秘的逼格特高的群体,跟搞私募的类似,后来发现他们主要的工作就是把一份合同的每一个字都推敲的无懈可击,顿时觉得人生没什么意义了。幸好我没选这行。跟卖保险的一样,西装革履。

上面几个职位都是相对高大上的,下面说几个比较平民的职位,也就是互联网公司的屌丝群体了,主要就是工程师,只说比较基层的,向上的什么高级xxx、资深xxx、xxx架构师大家自行补脑吧。工程师普遍有个"问题",就是谁也瞧不起谁,认为技术上老子天下第一,这个现象我认为大多数时候是个好兆头,有问题,大家坐下来 code talks,总比一群无聊的帮派看不惯另外一群无聊的帮派私底下排队搞斗争强的多。这种自负的心态有时候也会带来一些问题,最明显的是会束缚你的眼界,天下不是所有的问题都是能通过技术解决的,更多的时候不过是做取舍罢了(tradeoff 最能表现这层含义)。

Continue reading