Bojie Li (李博杰)
2014-06-01
Traditional router requires cold reboot if any component of the router software fails or needs to be upgraded. Network traffic is likely to be interrupted for minutes in the meantime. This work designs and implements a fault-tolerant software architecture composed of four components: clients including routing protocols and administrator, the router information base (MiniDB), a daemon to resolve rule conflicts among clients (SyncD) and the SDK for programmable switching chip. This architecture allows any component to fail or upgrade without interrupting data plane, and the control plane will automatically recover within predictable time after the component restarts.
Publication
Dissertation of Bachelor’s Degree, 2014. [PDF (Chinese)]
People
- Bojie Li, 4th year undergraduate in USTC
- Dr. Kun Tan, Senior Researcher in Microsoft Research Asia
2014-05-12
世界上有两种密码:一种是防止你的小妹妹偷看你的文件;另一种是防止当局阅读你的文件。
—— Bruce Schneier《应用密码学》
传说中的 “明文密码” 有两种形式:明文传输和明文存储。明文传输的密码不一定明文存储,明文存储的密码也不一定明文传输。去年沸沸扬扬的明文密码事件,就是密码明文存储,网站的数据库一旦被窃取,用户的密码也就随之失窃了。密码明文传输也是非常危险的,网络中的很多位置都可能安装有嗅探装置,明文传输的密码对这些嗅探者来说也就无密可言了。本文关注的是密码传输中的安全问题。
什么是 “明文”?如果密码以 ASCII 字符的形式直接发出去,对任何人来说这都是明文;如果密码用 base64 编码一下(例如 123456 经过 base64 编码就是 MTIzNDU2),对多数人来说这也许是密文,而对任何专业程序员来说就是明文。有些人认为,把“加密”算法弄得复杂些,再用代码混淆工具弄乱,就没人能分析出来了。这样的做法叫做隐藏,而不是安全,属于防止小妹妹偷看文件的级别。真正的安全依赖于公开的、被广泛使用的密码学算法,靠密钥而不是算法本身来保证安全。
可惜,密码学算法和协议并不是随便拼凑起来就安全的。
2014-04-09
昨天 OpenSSL 爆出了名为 Heartbleed 的重大安全漏洞(CVE-2014-0160),通过 TLS 的 heartbeat 扩展,可以读取运行 HTTPS 服务的服务器上长达 64 KB 的内存,获取内存中可能存在的敏感信息。由于这个漏洞已经存在两年,Debian stable (wheezy) 和 Ubuntu 12.04 LTS、13.04、13.10 等流行的发行版都受影响,无数部署 TLS(HTTPS)的网站都暴露在此漏洞之下。
什么是 SSL heartbeat
2014-03-31
我是怀着复杂的心情写这篇文章的,因为我们赶到大年三十的 SIGCOMM paper 因为与这个3月5日发表的演讲在架构上过于类似(事实上我们的 paper 里包含很多此演讲中没有提到的技术细节),被评审者认为 “nothing new”,只好撤回。要是 Google 晚两个月再发表他们的网络虚拟化技术多好啊!
这场演讲由 Google 网络技术总监 Amin Vahdat 发表于 Open Networking Summit 2014(视频链接),从概念上介绍了代号为 Andromeda 的 Google 网络虚拟化解决方案。
2014-03-31
昨天受科大 LUG 之邀参加了 CSDN 主办的 2014 开源技术大会(OSTC),结合会上记的笔记和不靠谱的记忆,与诸位分享,如有错漏之处请回复指出。本文部分图片来自 CSDN 官方的图文直播,演讲者的 slides 我显然没有,据说 CSDN 官方随后几天会发布。
早上见到了又高又帅的 Thomas Yao 和 Deepin 的王勇(没拍下来)。
2014-03-21
3月18日是在北京召开的 IEEE 802 全会的学生开放日,受 MSRA 所邀我去打了一圈酱油。参与标准制定的都是专业人士,我基本上是刘姥姥进大观园,止增笑耳。由于会场禁止拍照录音,而且会议所讨论的技术文档是不公开的,只能无图无真相了。
首先科普一下 IEEE 802 是干什么的。IEEE 802 是 IEEE(国际电气电子工程师学会)下属的委员会,负责局域网和城域网标准的制定,计算机网络的物理层和链路层协议基本都是这个组织制定的。IEEE 802 每年都要召开三次全会,大多数都在北美举行。从第三次参加全会开始才有投票权。
IEEE 802 下设若干工作组,例如 802.3 负责以太网(Ethernet),也就是我们用的有线网络;802.11 负责无线局域网络(WLAN),也就是俗称的 wifi。每个工作组要做的事情仍然很多,例如以太网有百兆、千兆、万兆、40G、100G 以及正在研究的 400G,不仅速度不同,所用的传输介质也不同;无线局域网有 802.11a/b/g/n/ac/ad 等标准,不仅速度不同,所用的频段也不同。因此每个工作组下又设任务组(Task Force)和研究组(Study Group)。
2014-03-05
我们所用的网站,数据大多以明文形式存储在服务器上,服务器端程序鉴别用户的身份、授予用户访问权限。不过业务逻辑复杂了,百密一疏,程序总是有这样那样的漏洞,连支付宝这么敏感的应用都不例外。此外,现在越来越多的网站搭建在公共云平台上,一个很大的顾虑是:云平台的所有者会不会窃取我的机密数据?
因此,数据在服务器上最好是加密存储,解密密钥在用户手里,也就是只有用户自己能看到明文,而网站所有者、云服务提供商、可能的服务器入侵者都只能看到密文。即将发表在网络领域顶级会议 NSDI 2014 的 Building web applications on top of encrypted data using Mylar 就是这样一种解决方案。
2014-03-03
前几天做了个内部技术分享,各位同学的看法莫衷一是,因此拿出来跟大家聊聊。本文将讨论 Google 的网络基础设施计划——Google Fiber 和 Google Loon,以及 Google 在网络协议方面的探索——QUIC,其野心在于把互联网变成自家的数据中心。
有线网络基础设施——Google Fiber
Google Fiber 的目标是让千兆互联网走进千家万户。以千兆的速度,下载一部 7G 的电影只需一分钟(如果你还在用机械硬盘的话估计还来不及存呢)。目前这个项目仅在美国 Kansas 和 Provo 两个城市试点。这两个城市的 Google Fiber 都提供了三种套餐,以 Kansas 为例:[1]
- 千兆网络 + Google TV:120 美元/月
- 千兆网络:70 美元/月
- 免月租网络:5Mbps 下载,1Mbps 上传,免月租,但要交 300 美元初装费。
其中第三种方案还不如美国大部分电信运营商提供的服务快,而大多数家庭已经购买了有线电视运营商的电视服务,因此对经济上能承受得起的家庭来说,三种套餐的对比突出了第二种套餐(70 美元/月的千兆网络)的“实惠”。
这里有两个值得争论的地方:
- 每人都有千兆这么快的网络,技术上可以实现吗?
- 70 美元/月的收费能收回 Google 搭建千兆网络的成本吗?
2014-02-26
今天抢了个极路由,用了一个小时才抢到,之前一直都在“人山人海”地排队。不禁想起去年给美丽邂逅做的抢票系统,有人问,我写了个脚本怎么抢不到票呢?谜底将在本文中揭开。
抢票系统要满足的条件是:
- 一人一票,一个人不能拿到两张票;
- 每天欲发行的票必须一张不多一张不少(假定来抢票的人足够多)地发出去;
- 用程序抢票成功的概率不能明显高于人工抢票成功的概率。
2014-02-24
DNS 服务是互联网的重要基础服务,不过它的重要性往往被低估。例如,2013年8月,.cn 根域名服务器遭到 DDoS 攻击,导致 .cn 域名无法访问;2014年1月21日,根域名服务器遭到某著名防火墙污染,导致所有国际域名无法访问。很多国际知名网站在中国大陆无法访问,部分原因就是遭受了 DNS 污染,也就是对域名返回了错误的 IP 地址。
要搭建一个抗污染的 DNS,并不是使用 VPN 解析所有域名这么简单。主要有两个问题: