l x& E# U( W, ?/ X1,跑车还是拖拉机?' N: c6 `& Q/ g. q5 z8 Y/ [1 B- ]$ [3 N
1 z* h. O4 g; V# X& q8 m; ?1 h, G" v
影响网速的因素,首先要看,你的电脑配置是不是太落后,是不是中了木马、流氓软件等。是不是同时使用了太多耗费带宽的服务,比如看视频,下载大文件等。 1 U. j4 E, Z8 f " ?, W$ i$ m: \2 t) |: a% k6 c1 O! N0 o. ]" @8 q
; L' l0 R! A! J 2,网络接入商8 Y$ z- I; x9 i1 v! h
+ c1 B; \9 n, O0 U
( l9 m: F* j2 y" f& A* d. |9 {简单来说,就是能牵线到你家里,然后让你的电脑上网的那个公司(现在也有无线的方式)。由于历史的原因,以前只有中国电信能为普通用户提供这种服务,所以现在最大的接入商,仍然是中国电信和中国网通。其他大大小小的各种接入商(比如长城宽带、E家宽、歌华有线等),可以看作是前两者的分包商。这些可以统称ISP (Internet Service Provider),互联网服务提供商。# P3 L6 `/ O4 l9 l6 Q5 n3 `, e+ G
. t) R( }7 o _% c! N5 v+ W5 n* c9 U$ B3 f. r 3,目标网站 q# m2 B1 b; `1 H
& K" C1 c: I2 n0 p# Z& ~
- F- |- K4 K' S+ H' k; a
作为上班一族的你,中心区是你经常去的目的地;而上网的话,目标网站的服务器在哪里?同样由于历史原因,绝大多数都在中国电信或者中国网通的机房里,也有部分公司,通过从电信、网通租赁一些带宽,自建了机房,再向外提供服务。这些都叫IDC(Internet Data Center),即互联网数据中心。 / f1 s" ?* {1 a5 O; X- a( t+ A! g3 ]7 I5 y2 b
" Y7 y/ y1 x. o# ~ 4,目的地是小区还是中心区? 7 E/ U' s6 {7 ?% A2 s" }2 s/ h) k# I4 A
3 U# N' A7 w7 p v. l. S. \假设你的接入商是长城宽带(简称长宽),10兆(M)入户。或者,从你家到长宽的骨干网,的确有10兆(也就是小区内的10车道)。问题是,你经常访问的是新浪、网易以及雪球等网站,而这些网站的服务器不在长宽。于是,如果长宽的用户越来越多,而长宽与电信、网通之间的接口带宽没有相应增加的话,网速就越来越慢。所以,即使是相同的带宽标准,不同的接入商,与你实际使用到的带宽差别非常大。这里不得不为电信、网通做一下广告,他们的ADSL以及专线等方式要比其他接入商靠谱。( g d1 i- u9 ]8 O: }/ |8 i
* e7 z) M3 Y/ C A0 ^6 F 4 |% d' Z: k$ C) ^虽然,网络接入商,不断的增加自己与电信、网通等骨干网之间的带宽(要钱的),也就是将小区出去的路修得宽一点。但是仍然难解决上班高峰期,大家一起上路的问题。所以,很多你会发现,早上起来觉得网速很快,但到晚上就不灵了。因为对小区宽带用户来说,晚上是使用高峰期。& e6 T! ?: U1 n' W! y1 c
0 j7 P7 S' q+ _% @0 F( \% K
% u9 E8 ]4 b) r0 v4 v W% x( v 6,小车还是火车?/ b2 e# A1 H! n @; P9 r7 r
6 }1 h9 z& {4 c1 v1 F/ g [0 O1 w* b: ]' S! t$ x& C
如果你的小区有1000辆车需要开到中心区,为了不堵车,是不是得修一条1000车道宽的公路呢?当然不是,因为1000辆车不是并排一起走的,每辆车只占几米长的一小截路面,所以10车道的公路就足够了。7 N1 _4 W( q; w: u7 w+ k5 U
2 t4 B6 r2 Z( J7 t# w e
: z4 n$ u' V5 R5 b) A4 h, O' Q1 `但,如果这些车不是轿车,而是火车(每列车所占的路面很长),恐怕就得要几百条车道,才不会堵车了。# z6 I& h8 Q9 ~: f2 ^0 S9 M
/ P: J( c* S. v1 x- _, H; R
- s, L V$ B& [; Y$ y) A
同理,假设小区里有1000户人家开设了10兆接入,接入商并非提供10兆X1000的总出口带宽。因为,多数人的上网行为,比如浏览网页,仅在打开页面极短的时间内产生高流量,而且也不是所有用户约好了一起刷页面,可以实现错峰。如果是QQ聊天之类的活动,所占的带宽也非常小。也就是说,你的10兆带宽,多数时间是闲置的。" T; D1 O' u9 {% u; k, p
. U8 c# c' b4 d2 _* ^0 y ]( H4 S) K; z7 k3 R. e
因此,网络接入商不会按理论最大值来配备带宽。如果平时大家都是开小车(浏览网页、聊天)还好,如果开火车,就容易堵了。进行大文件的下载(包括在线看视频)就像开火车,特别是使用P2P的下载软件(比如迅雷、电驴),因为带宽长时间被占据,如果接入商的总带宽冗余不多,少量的火车就会将出口挤爆。 $ c% P; J! C, L' T# x7 _; I" e 4 R' ?! D! W4 t! Y/ Y; y& z 5 D- s/ y/ @( a" I7 O9 e5 ~& L) b: n" X; g! ?2 y2 ^9 u 7,目标网站的系统 7 W& c$ W* a- t$ e- ?4 Z x* t1 y- m
& R( t5 {) }6 v9 ?9 e" N2 I q你一路飞车到了中心区,但是里面塞满了车,你只能在路口排队等。用户所能感受的网速,与目标网站所提供的服务及其质量关系极大,主要是受网站的架构、数据库读写、缓存技术、以及前端页面的编码、以及访问压力等影响。一般来说,静态页面抗压能力要比动态页面强很多,换个意思是,同样的条件下,静态页面通常比动态页面快。静态页面(或者是应该静态化的页面)可以简单理解为,所有人看到的几乎都是一样的内容,比如新闻页面;动态页面每个人看到的都是各不相同,比如微博自己的首页,或者对更新频率要求在秒以内的页面。$ E: Z: V* g/ R) O
9 }1 C [3 e1 b% B4 a, D( ~
$ _+ q8 \. `% Y4 w/ B2 x1 Y! O+ F3 u! v+ ]4 {, l 8,目标网站的网络环境 ! I: Y( ]' E( q7 S5 O . `; p" H' e4 \# v Y3 \5 E. X+ Z; j- d9 Z: U
由于各种原因,中国主要的基础网络提供商电信和联通(前网通)之间,互联互通还存在很大障碍,另外还有教育网、金桥网、中国移动等各种网络环境。如果一台服务器,放在网通的机房,电信的用户跨网访问可能较慢,反之亦然。所以,不少网站将服务器放到双线、甚至BGP机房,以解决用户跨网访问的问题。' D1 C6 `3 _) B$ l1 @ X
9 I8 ^- W! |0 B2 N& X& _# |
另外,由于中国到境外的出口总带宽瓶颈以及其他原因,国内用户使用境外的互联网服务,速度明显受到影响,哪怕目标服务器是在香港。 k8 \3 P9 N4 N) N ?) @/ Z4 c: t
7 R, v& @; `/ b$ V: b4 B9,网络分发和加速服务9 }% f r0 D N2 D, `5 l7 T& u
7 B9 P5 [! t" G1 y/ C1 Z& K
% R/ i# k% J6 p : B7 G& R' m _; U2 E4 w7 J这个不是针对单个上网用户的服务,是网络内容服务商(简称网站运营方吧),通过网络分发和加速服务,部分地解决用户的访问瓶颈问题。也就是CDN(Content Delivery Network)。/ i, q2 Q9 u3 l8 H) q( [ M
9 G) j+ k; K9 u; C
再看之前的例子,假设目标网站的服务器,是放在北京联通下某个机房,一个海南的电信接入的用户去请求,路途遥远。虽然在光速传输上,从北京到海南的物理距离所耗费的时间几乎可以忽略。但是事实上,由于各个接入商、各地网络环境、跨城市骨干网总带宽、以及互联互不通等问题,确实存在瓶颈。1 z) [7 }& d4 g9 _' K1 K5 @/ H
, d. d9 ^6 f; u! L5 P" u: {# J
+ ^' M2 h' ~$ O# ~: {3 N8 ]9 `
于是有的公司(蓝汛、网宿科技、世纪互联等),在全国各地租用(或者自建)当地的机房和网络,架设了自己的全国分发系统。目标网站最终的服务器可能还是在北京,但是将内容通过他们的CDN网络向全国(全世界)分发,于是,海南的用户,直接请求当地最近的服务器的镜像数据,比以前要快很多。而别的同样在海南的其他用户,需要相同的内容时,也直接从本地最近机房读取。CDN的方式,既提供了访问速度,也节约了带宽成本。有的带宽虚耗大户,干脆组建自己的CDN网络。世界上最大的CDN服务提供商是Akamai(NASDAQ:AKAM)。! t+ t1 [* p% O0 o
' R `; V' S6 L$ V& c 3 @+ }1 S! e! p( M这方式可以理解为,全国人民本来要去北京朝圣,一睹老人家遗容。按传统的方式,即使将飞机、轮船、火车、手推车等所有交通工具用上,再将北京整个城市腾空来接待,10几亿人民不知道排队到何年何月。现在有个CDN公司,将尸体一摸一样地复制了几万份,分发到全国各地,甚至某些乡镇都有。于是,人民无需背井离乡、长途跋涉远赴京城,奔丧之需又丝毫不受影响。 : l+ L1 w3 D9 A# _7 r0 S' n 7 z( J1 H3 v7 |7 |8 U: D3 z2 y1 x% R C) }9 E; D9 A 10,动态CDN 0 K8 t* A" @5 G9 A! Y. M! N$ r' O* t: a! g; O8 O( R
, J: j* L, [, W6 T, ^3 \( f1 S
前面说的CDN目前主要使用在更新频率很低(甚至几乎不作更新)的静态(静态化)内容上。比如,上面的遗体,复制几万次而不影响大家哀悼,是因为复制品和原品一摸一样(至少人民感知不到区别)。如果是个活人,身体、穿着、神态等天天在变,要保证复制品质量的话,就得不停的更新,那样会导致很多运输在途的复制品变成废品。现在的动态CDN技术,能将复制频率以及向全国分发的时间,缩短到用户无法感知的程度,已经有部分公司尝试使用(价格昂贵)。 5 e, d+ S9 I" K5 e8 Q2 L# ~$ o# x! \2 n9 e& h. x
* x; Z9 L; X7 L( i+ K; o8 k11,带宽的单位) c# `- b) ^8 c& W
# e: k/ B0 Z6 M* G- k0 G' N