- @8 `" @, Q# V
(不久前,和@范卫锋 聊天,谈到我们作为技术的外行,怎么去了解一些基本的互联网知识,于是计划将一个外行人对技术的理解,写下来。某些概念和原理的解释可能不太准确,另外和投资没有直接关系,供其他转行、跨行同学参考。)1 L- \4 m: f. B' b+ ~2 v1 m
' y. o0 H3 z7 V, O
第一篇:带宽常识 我家是10兆的宽带,上网为什么巨慢?
8 E( ]7 E; Y$ s/ F5 `" N3 ? j" o9 C: m: H
0 c" |. f0 {9 c+ X1 x
如果问题是“我们小区里面是双向10车道,为什么上班路上还是堵车呢?”答案很明显,小区不堵车,但我们的上班地点,出了小区,还得老远的跑到中心区CBD去。你家里的10兆宽带(如果有的话),只是从你家到网络接入商的带宽,不等于到所有地方都是这个速度。
8 O' M2 c5 f h3 L% l% E" p% P8 Q3 H0 p
& ~. E0 V R5 }6 b- Z
2 B9 s" C5 O9 `2 f& d& i: w
4 j( i% h+ z3 l8 |% R0 k( h+ c上网快慢,涉及到几个问题:你的电脑;你的网络接入商;你希望使用的互联网服务(简单理解为要访问的目标网站吧);目标网站的系统;目标网站所在网络环境。
8 @& g' k7 L3 g6 D* b; c; t
4 {' b. ^# W- j! q* d) i! }* ]( i9 F3 M I8 `: j: z
1,跑车还是拖拉机?7 \/ m$ ^/ H6 j$ Q4 ~; N; @# v
" }) [8 P: S- m! ]) z( D4 K% y- e& ]0 Y9 F( V+ y: p
影响网速的因素,首先要看,你的电脑配置是不是太落后,是不是中了木马、流氓软件等。是不是同时使用了太多耗费带宽的服务,比如看视频,下载大文件等。
; N0 E8 A# k0 I6 v" n+ C2 X# Y! ]9 U7 D
4 x# K: y+ g! g3 v2 z, p
5 Z! t/ @9 l& G: L& C1 q P2 S7 R( r- ~
2,网络接入商
7 w( k0 V+ o& t
+ |; L0 n5 U$ Z+ F* g1 u
2 V& t2 F9 _. @" f3 h# ?% ^简单来说,就是能牵线到你家里,然后让你的电脑上网的那个公司(现在也有无线的方式)。由于历史的原因,以前只有中国电信能为普通用户提供这种服务,所以现在最大的接入商,仍然是中国电信和中国网通。其他大大小小的各种接入商(比如长城宽带、E家宽、歌华有线等),可以看作是前两者的分包商。这些可以统称ISP (Internet Service Provider),互联网服务提供商。
9 w. G- j4 F' D( L2 x* I/ g( F; ]$ v1 n! c+ I( `8 T$ G4 h
& e' R1 I# D& F% o: F5 L3 _
3,目标网站1 L5 ^/ }7 }# O3 R
+ G6 z% J0 h# r0 X, Y& n
8 H4 I& }4 Q' d- X3 f作为上班一族的你,中心区是你经常去的目的地;而上网的话,目标网站的服务器在哪里?同样由于历史原因,绝大多数都在中国电信或者中国网通的机房里,也有部分公司,通过从电信、网通租赁一些带宽,自建了机房,再向外提供服务。这些都叫IDC(Internet Data Center),即互联网数据中心。1 j7 k; d* x5 M( e& |" ?& s
" v: R( S, P. W# g6 |2 K/ f A+ h0 Q; ]1 s1 U3 Q2 ?. H
4,目的地是小区还是中心区?
! J1 f& e+ \; z8 q1 T6 x3 C5 S0 P0 ^7 @$ J) `
* u6 N6 i- t h% E2 k假设你的接入商是长城宽带(简称长宽),10兆(M)入户。或者,从你家到长宽的骨干网,的确有10兆(也就是小区内的10车道)。问题是,你经常访问的是新浪、网易以及雪球等网站,而这些网站的服务器不在长宽。于是,如果长宽的用户越来越多,而长宽与电信、网通之间的接口带宽没有相应增加的话,网速就越来越慢。所以,即使是相同的带宽标准,不同的接入商,与你实际使用到的带宽差别非常大。这里不得不为电信、网通做一下广告,他们的ADSL以及专线等方式要比其他接入商靠谱。
. _$ m, q, k9 }0 V; @4 n6 r+ L( u, A2 Z; X0 l( K4 r- A% e7 F
5 y$ t x7 U" t9 a$ U( C
5,上班高峰期/ s7 Z1 t/ G8 N& U% Z
/ l5 ?" O- ^% z# X1 o( K1 n; z
. V5 h& B V% g$ I虽然,网络接入商,不断的增加自己与电信、网通等骨干网之间的带宽(要钱的),也就是将小区出去的路修得宽一点。但是仍然难解决上班高峰期,大家一起上路的问题。所以,很多你会发现,早上起来觉得网速很快,但到晚上就不灵了。因为对小区宽带用户来说,晚上是使用高峰期。
5 b, _+ f' {( m8 N- i
$ k& w, c! {9 L3 Y& f2 m( r# r: d: n7 e$ z2 K; l1 l
6,小车还是火车?
6 X( p' M' D A
' w8 N B/ Y% l+ F4 r3 J# j
Z8 o" t( q5 u/ Z9 C如果你的小区有1000辆车需要开到中心区,为了不堵车,是不是得修一条1000车道宽的公路呢?当然不是,因为1000辆车不是并排一起走的,每辆车只占几米长的一小截路面,所以10车道的公路就足够了。
3 e* P; e$ k1 s5 H) t) Q9 e E: o
, d$ f+ P6 K- I4 B0 Z' P但,如果这些车不是轿车,而是火车(每列车所占的路面很长),恐怕就得要几百条车道,才不会堵车了。8 S8 K$ x. K6 C" {; c1 N( @# j, W9 s
3 W- |( o. a) v) Z) O2 f- s3 w: ]6 I$ }
同理,假设小区里有1000户人家开设了10兆接入,接入商并非提供10兆X1000的总出口带宽。因为,多数人的上网行为,比如浏览网页,仅在打开页面极短的时间内产生高流量,而且也不是所有用户约好了一起刷页面,可以实现错峰。如果是QQ聊天之类的活动,所占的带宽也非常小。也就是说,你的10兆带宽,多数时间是闲置的。
& d8 k5 J5 P- H! h- ^
6 t7 b. {% H0 {/ D1 C) P5 d1 H" `6 d8 |3 @6 ~
因此,网络接入商不会按理论最大值来配备带宽。如果平时大家都是开小车(浏览网页、聊天)还好,如果开火车,就容易堵了。进行大文件的下载(包括在线看视频)就像开火车,特别是使用P2P的下载软件(比如迅雷、电驴),因为带宽长时间被占据,如果接入商的总带宽冗余不多,少量的火车就会将出口挤爆。! i& |) b0 y% D) M/ _- Q# n
/ X; I9 P- b9 q( Z9 q, { i
+ _1 X2 g# I: _' y9 O8 I1 {
" u/ H9 e, @* n- j/ G: u7,目标网站的系统
" E% N- \$ y' m) }# L8 z8 E4 k: i
4 \/ ~3 x2 m3 U6 [4 V. ^& s9 C4 K0 t+ G2 b" {+ N) v1 o
你一路飞车到了中心区,但是里面塞满了车,你只能在路口排队等。用户所能感受的网速,与目标网站所提供的服务及其质量关系极大,主要是受网站的架构、数据库读写、缓存技术、以及前端页面的编码、以及访问压力等影响。一般来说,静态页面抗压能力要比动态页面强很多,换个意思是,同样的条件下,静态页面通常比动态页面快。静态页面(或者是应该静态化的页面)可以简单理解为,所有人看到的几乎都是一样的内容,比如新闻页面;动态页面每个人看到的都是各不相同,比如微博自己的首页,或者对更新频率要求在秒以内的页面。
) r; R* o/ g; Q* J# r
$ _; F) O+ |0 l1 m% W& ]7 S+ }
+ A. O0 Q9 @$ q5 g% c* ~* ~
: ?0 q! z; ~: c" e1 h; Z8,目标网站的网络环境, { F$ }& I9 w+ u3 r, y2 B
; d1 T" u `) p
# N5 J! k ?( P/ a; y, M由于各种原因,中国主要的基础网络提供商电信和联通(前网通)之间,互联互通还存在很大障碍,另外还有教育网、金桥网、中国移动等各种网络环境。如果一台服务器,放在网通的机房,电信的用户跨网访问可能较慢,反之亦然。所以,不少网站将服务器放到双线、甚至BGP机房,以解决用户跨网访问的问题。0 g u- J0 a6 L0 l; [' n
+ q" V9 c3 V4 a9 |
另外,由于中国到境外的出口总带宽瓶颈以及其他原因,国内用户使用境外的互联网服务,速度明显受到影响,哪怕目标服务器是在香港。
5 P: Y4 f% |3 o: k
( S! J8 q3 P3 h! V% C9,网络分发和加速服务
8 t! v( [0 q! |; E3 E# S1 k( Z
5 _' k8 X' d. N3 u) W' i% c$ ~( D
9 w$ Z1 h; d* E2 |/ V7 ]3 a这个不是针对单个上网用户的服务,是网络内容服务商(简称网站运营方吧),通过网络分发和加速服务,部分地解决用户的访问瓶颈问题。也就是CDN(Content Delivery Network)。. O" ~' l+ W0 u2 |
( h- \" t& u s; q# i. ^: B8 f
再看之前的例子,假设目标网站的服务器,是放在北京联通下某个机房,一个海南的电信接入的用户去请求,路途遥远。虽然在光速传输上,从北京到海南的物理距离所耗费的时间几乎可以忽略。但是事实上,由于各个接入商、各地网络环境、跨城市骨干网总带宽、以及互联互不通等问题,确实存在瓶颈。" Q/ J/ p5 U. k; t( b( ?. w
6 E3 h" E9 d* }0 c+ s; E3 l
, A2 x" |' C- C4 R于是有的公司(蓝汛、网宿科技、世纪互联等),在全国各地租用(或者自建)当地的机房和网络,架设了自己的全国分发系统。目标网站最终的服务器可能还是在北京,但是将内容通过他们的CDN网络向全国(全世界)分发,于是,海南的用户,直接请求当地最近的服务器的镜像数据,比以前要快很多。而别的同样在海南的其他用户,需要相同的内容时,也直接从本地最近机房读取。CDN的方式,既提供了访问速度,也节约了带宽成本。有的带宽虚耗大户,干脆组建自己的CDN网络。世界上最大的CDN服务提供商是Akamai(NASDAQ:AKAM)。* a" E, d; d. `9 F4 \
- H4 D' |! Q% l4 D: B5 I, v* M8 [7 b5 ?* e0 o" `
这方式可以理解为,全国人民本来要去北京朝圣,一睹老人家遗容。按传统的方式,即使将飞机、轮船、火车、手推车等所有交通工具用上,再将北京整个城市腾空来接待,10几亿人民不知道排队到何年何月。现在有个CDN公司,将尸体一摸一样地复制了几万份,分发到全国各地,甚至某些乡镇都有。于是,人民无需背井离乡、长途跋涉远赴京城,奔丧之需又丝毫不受影响。
! b5 t+ a, e; R' X
, ?# l5 j7 z$ ?# u' |0 }# `- i) J" q- H7 ?1 P
10,动态CDN7 F" c, Q9 {9 u/ h2 N- Z
+ P/ x5 _# ]9 l; j6 C0 W
( o5 v" i0 f' D+ C" N0 G前面说的CDN目前主要使用在更新频率很低(甚至几乎不作更新)的静态(静态化)内容上。比如,上面的遗体,复制几万次而不影响大家哀悼,是因为复制品和原品一摸一样(至少人民感知不到区别)。如果是个活人,身体、穿着、神态等天天在变,要保证复制品质量的话,就得不停的更新,那样会导致很多运输在途的复制品变成废品。现在的动态CDN技术,能将复制频率以及向全国分发的时间,缩短到用户无法感知的程度,已经有部分公司尝试使用(价格昂贵)。
4 e8 [- N5 M9 [5 [3 r& l: w- s5 I5 l0 |! r2 {* s) k0 w
5 t3 Y4 X" u# G* V
11,带宽的单位
5 a* n/ M0 r# b5 G; R3 }" _. l
) w$ r1 S9 B5 Y% W$ p
/ ]$ i5 G* w# D/ M9 {- D; ]假设上面说的问题都解决了,家里10兆(10M)的带宽,下载东西时,你会发现,怎么最多也只是1.25M/秒?那是因为,服务商说的带宽(字节)单位,是bit,而我们电脑上,使用的单位是byte。1byte=8bit,需要将他们的说的数字,除以8。电脑里显示某个文件的大小时候,使用的也是byte。(雪球 梁剑)
; y6 x2 O: ?8 t% K. _; W' |) e
: ^4 B6 z" A" Q& `0 ^$ g; v. Q/ Z, Y) h3 e- K& H
2011-12-29 18:02 来自雪球 2 l5 v" D1 ~2 |9 Q+ S
|