数字时代没有隐私
September 17, 2008 2:08 pm UTC | In Tech | 6 Comments | hide有这样一段聊天记录:
atppp: 唉,数字时代啊
atppp: 做事不留痕迹是不可能的
delphij: 数字时代没有隐私。。。
delphij: 所以这也是为什么需要有一台自己的服务器
伟大的 delphij 最后一句话逻辑似乎有点跳跃,不过不管怎么说,类似问题早在影片《手机》中就已经提到——张国立说:“还是农业社会好啊!那个时候交通通讯都不发达。你进京赶考,几年不回,回来以后啊,你说啥子都是成立的!现在……(掏出自己的手机)近,太近了,近得人都喘不过气来咯!”(1:22:00)
随便说一个问题:gmail 在一些浏览器的历史记录里会留下信件标题和 email 地址,比如我的 Firefox 3 地址栏打入 facebook 就会出现这么个情景:

(delphij 的意见:事实上邮件标题不应该带有隐私内容,因为即使邮件加密,邮件标题也是明文的,所以这个问题也可以怪罪到 facebook 头上)有人怒道:
I’m using Firefox 3.0.1
When I logout from Gmail, if I type gmail on the address bar it will show the topic of the mails in the dropdown menu.
Where is my privacy? Where is the privacy of my friends using my computer to access their gmail account?
That smart bar is awful, by the way.
Considering going back to the older version of FF.
其实这个问题以前就存在,打开历史记录就全看到了,只不过历史记录很少有人无聊去翻,而最近有一些浏览器比如 Firefox 3 和 Google Chrome 大举将地址栏改造成了历史记录检阅簿,导致这个问题直接暴露在人民大众面前。下面再举例一些数字时代容易留下痕迹(甚至不可能不留痕迹)的地方:
- 浏览器表单、cookie、history、cache。
- 聊天记录有不少默认开启,特别 gtalk 默认就在服务器上记录。
- 电脑中的 Recent files,使用程序在文件系统和注册表里留下的记录(您的视频播放器里的最近播放列表是不是一堆毛片呢?)
- email 收件人一般都可以在 email header 里查到发件人的 IP
- 浏览过别人的网站在他们服务器上留下的记录
- 蓝牙和别的无线设备所到之处会留下痕迹
- whois 可以查到大多数域名注册者的详细地址和电话
- social networking 网站稍加挖掘就可以找到很多私人资料
- router 含有 NAT 表,可以查到网内的人都在连什么样的网站之类的
- router 的 DHCP 表含有最近附近使用过的(无线和有线)设备的 mac 地址(进而可以知道设备厂家和型号)
- GPS 设备内部可能带有 track log
- 身份证号常随获奖名单之类的公布,搜索人名有时候可以查到身份证号(进而知道生日、籍贯等)
- 手机的电话记录和账单记录
- 电话重拨功能记录了前一次或前几次的电话号码,即使没有数字显示也很容易从双音频拨号声分析出来
- 银行账单有详细的明细表,比如取钱的具体时间和地点
- 如果交通违规,违规单上会有详细时间和地点
- 新闻报道难以控制,人怕出名猪怕壮
很多时候,在隐私性和方便性之间的平衡点往往因人而异,于是像 facebook 之类的网站都要搞一大堆很细节的隐私选项。Gmail 在打开信件之后为什么要在浏览器标题条显示 email 地址和信件标题呢?这个看似挺人性化的功能其实并不一定那么有用(然后还关不掉?)。不过就事论事,浏览器历史记录里存了这些个信件标题,看起来倒更像是浏览器的责任,因为那些个请求都是明确说了 no-cache 的(虽然这并不指示不要加入 history,但是不加入更合理一些)。
话说回来,浏览器里不留痕迹是很难的。可以用 Portable Firefox、Safari 的 Private Browsing 或者 Google Chrome 的 Incognito mode 之类的。这种“Porn Mode”(也有人叫 Banking Mode),似乎 Firefox 3.1 和 IE8 也做进去了。
小牛犊 APNG 力挫老古董 MNG
March 3, 2008 11:27 am UTC | In Tech | 10 Comments | hideGIF 是一个变态的格式,不但当年有专利方面的问题,而且只能支持 256 色,还没有 full alpha 通道,只不过现在还没有别的通用格式可以替代其动画功能,所以 GIF 还是一个相当流行的格式。PNG 1996 年发布的时候就希望打倒 GIF,但是 PNG 的软件支持发展比较慢,特别是 PNG 不支持动画,导致 GIF 一直到现在还没有被打倒。(GIF、JPEG 和 PNG 的比较)
PNG 小组的保守派一直强调,祖先定下规矩,PNG 只能存储一张图片。于是,他们在 1996 年就开始琢磨另一种全新的动画格式,叫做 MNG,但是十多年过去了,MNG 却已经销声匿迹。MNG 错在哪里?MNG 的结构太复杂了。PNG 当初作为一种全新的格式,就经过了好几年才开始普及;而 MNG 除了多一个动画功能,也没有太多的好处。Mozilla 浏览器曾经支持过 MNG,但是 2003 年夏天很诡异的把 MNG 支持去掉了。You can support, and then unsupport?这不禁让我想到盖茨在 Bill Gates’ Last Day at Microsoft 中所说的“you can retire, and then unretire?”
Mozilla 去掉 MNG 支持的事情曾在 Bugzilla 上引起轩然大波(Bug 18574 195280)。去掉 MNG 的主要原因是 Mozilla 里维护 MNG 库的 tor 力不从心不想干了。MNG 复杂的结构导致其解码库比 Mozilla 里别的所有图片格式的解码库总和还要大,虽说这 200 kB 的解码库即使在当时 2003 年也根本不算什么,但这是 tor 列举的移除 MNG 支持的第一个理由,因此也常被人误读为 Mozilla 去掉 MNG 的根本原因。MNG 创始人之一 Gerard Juyn 曾写道:
Mozilla 1.4 still supports MNG, but current builds have it removed. The decision was made to save space…
FireFox is the lean and mean descendant of Mozilla…
这之后 MNG 的日子越来越不好过,目前主流浏览器里只有 Konqueror 原生支持 MNG,别的都要装插件(Konqueror 算主流浏览器么?)。libpng 目前的维护者 Glenn Randers-Pehrson 在 2007 年承认:
After 6 years or so since MNG-1.0 was approved, it seems clear that it is not really going anywhere, mostly due to claims that it is too complex.
互联网发展了这么多年,通用动画格式仍旧只有存在各类问题的 GIF 一种。 2004 年,Mozilla 有两个人痛定思痛,发明了一种基于 PNG 的动画格式,叫 APNG。APNG 比 MNG 好在什么地方?APNG 是对 PNG 格式的一个极小扩展,而非完全从头打造一个全新格式。首先,它和老 PNG 标准完全兼容,不认识 APNG 格式的浏览器可以正确显示 APNG 动画里的第一帧图片;其次,由于它只是对 PNG 格式的一个小扩展,所以支持 APNG 非常简单,PNG 库也只会增加大概 5% 的大小。不过比较搞笑的是,2004 年 APNG 提出之后那两个猪头一直没空实现它,一直到 2006 年有一个机会他们在 Google Summer of Code 找了个小弟 Andrew Smith 实现了 APNG 解码,现在最新的 Firefox 3 beta 和 Opera 9.50 beta 都已经支持 APNG。
APNG 的出现,自然是给渐渐死亡的 MNG 重重一击。PNG 邮件列表上争吵声此起彼伏。2004 年,PNG 创始人之一 Thomas Boutell 在《MNG 已死,有事烧纸》一文中回顾到:
PNG is moderately successful, but it never did replace GIF. That’s mainly because Netscape sprang animated GIF on the world when the PNG specification was nearly final, without saying a word or once suggesting that we include animation.
When animated GIF appeared, I lobbied the PNG group for simple, GIF-style animation support in PNG, … I lost out to those who made eloquent arguments for a more complete animation format (So much for dictatorship. At least I was benevolent.). MNG, the all-singing, all-dancing, all-merciless animation format, took a long time to standardize and was rejected by both major web browser vendors …
Very recently, two young turks decided to invent a simple new animated-PNG format (apng) … It is kicking up a shitstorm on the long-dormant PNG mailing list. The old-timers and the young turks are trying to hash out an agreement. I agree for the most part with the young turks and their design choices.
I could not be more pleased with this development.
Andrew Smith 在 libpng 的 apng 补丁发布网站提到一句 MNG:
MNG already existed at that time but was too big/fancy for most people to accept as an image format (this is the first and last time I mentioned this flamy topic).
这样的争吵持续了很久,2007 年 4 月 PNG 小组投票决定是否允许 APNG 进入官方 PNG 标准,投票以 10:8 否决这个建议,PNG 小组里的顽固分子仍旧相当排斥直接在 PNG 格式上动手动脚支持动画。
标准的诞生,基本上是一个先有鸡还是先有蛋的问题。世上本没有使用 PNG 的人,也没有支持 PNG 的浏览器,更没有制作 PNG 的软件;然而几年过去,三者相互影响并都稳步上升。MNG 一开始面对的也是同样的境地,但却没有流行起来。APNG 其概念本身并不优美,是对 PNG 标准的粗暴践踏,但是因为有的放矢,射中要害,却得到了两个主流浏览器的认可。标准的诞生就是一场恶战,不一定最好的技术就会胜利,TCP/IP 就是一个例子。新标准和新公司一样,只有好的想法和技术并不能成功,市场团队同样重要。市场做好了,烂东西也能变成好东西。
有人对开源软件盲目崇拜,认为软件开了源就是万事大吉,其实缺少了经济利益驱动的开源软件往往官僚更严重,即便在开源团队内部,权威照样存在,更不用说在用户层面上的反馈了。开源不等于开放,开源也不等于民主。AA 软件的 XX 功能能不能改改?你丫不会自己改啊?AA 软件为什么没有 YY 功能?你大爷的你爱用不用。AA 软件的 ZZ 功能是不是有 bug?放屁,这叫 feature!Bugzilla 上这么多反对的声音,Mozilla 的 MNG 支持照样被去掉了。群众力推 APNG,无论其多么的符合实际需求,照样能被 PNG 小组里的老东西打倒。
最后,有人问过我,是否看好 APNG。我想我也预测不了世界范围的图片格式流行趋势,不过如果 IE 不支持 APNG 的话,APNG 还是只能局限在应用程序界面上使用,很难成为网页上的通用图片格式。
(以上所有引文中的下划线都是我加的)APNG 的几个网站:
Tags: animation, apng, browser, bug, firefox, gif, mng, mozilla, opera, png, web
你的浏览器支持 SVG 吗?
February 14, 2008 6:32 pm UTC | In Misc | 6 Comments | hideSVG(全称 Scalable Vector Graphics)是下一代矢量图形格式,这玩意儿和 MathML 一样,都是基于 XML,都是 W3C 上个世纪就开始搞的东西,但是一直到现在这俩难兄难弟还不是非常流行。所以,我就做个广告吧,矢量图形格式最大的好处就是放大不失真。如果你的浏览器支持 SVG,就能看到下面的图形。四大菜系里只有 IE 是需要装插件的,Firefox Opera Safari 都原生支持 SVG。
(这是我高中很傻很天真的时候搞的签名 ATP,扫描到电脑里然后用 Adobe Illustrator 矢量化。)
断词换行大战
January 22, 2008 3:57 pm UTC | In Tech | 12 Comments | hide人物介绍:
- 王强:网景(Netscape)公司老雇员,后成为 Mozilla 基金会骨干,主管外联;
- 艾利:互联网世界警察 W3C 高层,负责协调 CSS3 进度;
- 炮尔:微软(Microsoft)资深工程师,参与编写 CSS3 文字模块标准;
- 盖兹:微软创始人之一,人称盖老板。
【第一幕】2001 年 5 月,艾利给炮尔打电话。
艾利:老炮啊,我,艾大妈。
炮尔:哎呦妈呀,好久不见嘞呀,你最近忙啥呢?
艾利:我还那样,我跟你说啊,我今天没空跟你扯。明天我们这儿有个会,要开始搞 CSS3 文字模块了,你来不来插一腿?
炮尔:啥?你们 CSS2 都没搞利落呢怎么就上 CSS3 了?我告诉你啊,上次你欠的债还没还呢,你让 Mozilla 把我们微软的 word-wrap 和 word-break 给实现了不就齐活了?还搞啥屁标准啊!
艾利:Mozilla 他们不干啊,他们非要个标准。我说,我私下早就说好让你们写标准了,你到底来不来?
炮尔:标准?啥标准?我们微软就是标准!你去外头看看多少人用我们的浏览器!
艾利:嘘,你们和网景打官司呢,别大声嚷嚷,小心 Mozilla 也告你!
炮尔:好好好,老大我服。明儿个几点开会?我今晚就飞过去。
【第二幕】第二天,W3C 会议室。
王强:炮工您好您好,很高兴见到您。听说你们 IE6 快发布了,恭喜恭喜啊!
炮尔:哪里哪里!不过我们是真的觉得这个版本很好很强大啊!
王强:听说一大批银行网站在 BETA 版上运行都有问题?嘿嘿,嘿嘿!
炮尔:这个……这个……
(艾利姗姗来迟,进入会议室)
艾利:欢迎来到 W3C,谢谢大家光临。我们 W3C 是世界上最大的互联网组织,技术实力雄厚……
炮尔:(打断)喂,你别打官腔行不行,我一会儿还要去看脱衣舞呢,难得老婆管不着我。
艾利:好那我们就直接进入正题,今天我们要协调开始 CSS3 文字模块的工作,最好下个星期就能发布一个草稿。
炮尔:大家都知道,微软早在 IE 5.5 就实现了伟大的 word-wrap 和 word-break 属性,大家只要照搬微软的文档,标准就出来了。我给大家举个例子,加了这个属性的 div,哪怕碰到再长的文字也不会把 div 撑破,比如:

王强:首先,我赞赏微软在这方面先驱的工作,但是我并不觉得我们可以把微软这两个东西拿来直接作标准,比如同样属性的 div,可能会有这样的景象:

王强:apart 一词被硬生生拆成了两行,这是不容许的。我觉得在这个断词换行领域,我们还有很长的路要走。
会议不欢而散,过了一个星期炮尔勉强拷贝了一下微软的文档发布了第一个 CSS3 文字模块草稿。
【第三幕】 一年后,2002 年 5 月,炮尔给王强打电话。
炮尔:小王啊,我去年请你看了脱衣舞秀,你怎么也不还个人情啊。这不 CSS3 文字模块二稿都快出了,你们 Mozilla 浏览器怎么在断词换行功能上连个动静都没有啊。
王强:这玩意儿不好搞啊。就上个月,我们才找中国佬谈过,各类标点符号能不能放行首行末的规则就快把我搞晕了。
炮尔:这个好办,我直接把我们的代码送给你们吧。我说,你还是给你们开发组施加一点压力,我这 CSS3 草稿发布出来就我们微软一个浏览器支持,我们律师怕人家告我们垄断那。
王强:还不光那一个操蛋的标点问题呢,这不我刚又收到一封中国佬的信,说他们新出了个规定,“毛主席”三个字中间也不能换行……
炮尔:我操,这都文革时候的事儿了,他们忽悠你呢。
王强:不光中文,别的语言也有问题。就说英语好了,一个词在什么地方断行,就是一个很技术的问题。比如 fucking,我是断成 fu-cking 呢,还是 fuck-ing,这很有讲究啊。
炮尔:你他妈骂我干嘛?
王强:我没骂您,我就是举个例子。再比方说了,德语 ss 中间不能断,阿拉伯语……
炮尔:行了,你们就不能随便先起个头,你们社区这么多免费劳动力,你起个头,大家自然就能贡献了。
王强:不瞒您说,这个断词换行我们开会认为是核心引擎功能,只能我们自己干。既然是核心,就不能随便乱搞,要搞就要搞个能用的。您看,光英文断词我们就得输进去整一个大英词典,工作量很大啊。
炮尔:好好,我理解。那你觉得啥时候能搞出来?
王强:今年吧,我们人都招好了,就等着写代码了。
【第四幕】镜头快速切换好几年的时光。
2003 年,Mozilla 基金会成立。断词换行功能毫无经济利益,被无限期搁置。
2004 到 2005 年,新版本 Firefox 连续发布,开发以短平快为宗旨,断词换行功能的呼声在 Bugzilla 上堆积如山,但 Mozilla 基金会视而不见。
2006 年,IE 7 开发组送给 Mozilla 一个蛋糕,祝贺 Firefox 2 发布。王强吃了一块蛋糕,感觉里面有异物,从嘴里拉出一张纸条:“你们他妈的怎么还不搞断词换行?”。
【第五幕】2008 年 1 月,盖兹在办公室找炮尔谈话。
盖兹:老炮啊,你看啊,我再过几个月就退休了,我这辈子就俩愿望,一个是把我发家的 BASIC 语言搞大,VB 搞得很成功,我很开心;还有一个我希望我们强大的 IE8 能成为 W3C 标准,你看,这只剩下没几个月了,你知道我退休前就这么一个心愿……
炮尔:盖老板,我很努力了,可是 W3C 一直不出 CSS3 标准,我也没办法啊。
盖兹:今年过年不是刚给他们送了一箱蚁力神吗?他们怎么不买帐。
炮尔:盖老板您有所不知啊,蚁力神出事儿了;而且 Mozilla 基金会刚给 W3C 送了一箱脑白金,恐怕 Firefox 还没钱开发断词换行功能,不让 CSS3 发布呢。
盖兹:好吧我知道了,你先出去吧。
盖兹给艾利打电话。
盖兹:艾大妈啊,我盖兹。
艾利:哎呦,您老还健在?
盖兹:我好得很,我问你啊,CSS3 咋还不发布呢,老子都快退休了。
艾利:这可不怪我啊,您给 Mozilla 基金会打个电话问问吧。对了啊,HTML 5 出草稿了,你们来不来插一腿?
盖兹:得,我不敢了,先这样吧,我还忙呢。
盖兹狠狠的拨了 Mozilla 基金会的号码。
“您好,这里是 Mozilla 基金会,捐钱请按 1,送钱请按 2,给钱请按 3,……和活人说话请按 0。”
盖兹按了 0,正好是王强接的。
“您好,这里是 Mozilla 基金会,我是王强,May I help you?”一口地道的伦敦腔。
“喂,我是盖老板,你大爷的你们到底什么时候搞他妈的断词换行?”
嘟……嘟……嘟……嘟……嘟……嘟……
(情节纯属虚构,如有雷同,实属巧合。)
路人甲:可是好像真事儿就是这样。
路人乙:笨!这叫艺术源于生活!
关于 firefox 里面和 HTTP 连接有关的参数设置
January 28, 2005 11:22 am UTC | In Tech | 3 Comments | hide发信人: atppp (Big Mouse), 信区: Firefox
标 题: 关于 firefox 里面和 HTTP 连接有关的参数设置
发信站: BBS 水木清华站 (Sun Nov 21 08:14:43 2004), 站内
关于 firefox 里面和 HTTP 连接有关的参数设置
本文是我和一个大牛啰里啰唆的聊天记录整理翻译,属于科普,有些地方可能说得不准确,大家不要当作专业技术文章看。欢迎拍砖。
一个典型的网页,是由一个 html 文件和内嵌的各类元素组成的,这些元素包括页面内的图片,css 文件,javascript 文件等等。每一个内嵌的元素在 HTTP 协议的层面上和那个 html 文件是没有区别的:也就是都需要浏览器去服务器上抓下来。一个早期典型的浏览器是这样实现的:当用户敲入网址之后,浏览器和服务器建立连接,请求这个 html 页面,然后边接收服务器发送的 html 页面,边解析,碰到内嵌元素,可以立即开第二条连接请求。另外,如果内嵌元素很多,他可能会开多条连接同时请求。当所有需要的元素都下载完毕之后,浏览器 就会将页面画出来。这个过程就是最早期的 HTTP/1.0 协议所设想的浏览器实现。
HTTP/1.0 这种多连接的运作模式是可以改进的。建立 TCP 连接的过程是这样:客户端给服务器发一个网络包说我要和你建立连接,服务器收到之后回一个网络包说“我愿意”,然后客户端要再发给服务器一个网络包说“好 那咱们开始传数据吧”。这一来一去三个包才能建立 TCP 连接。连接建立之后,浏览器给服务器发请求,服务器给浏览器回应。完事之后又要来回几个网络包关闭 TCP 连接。如果页面有很多文件长度很短的元素,每个元素都需要单建一条连接就会导致网络上大量的都是 TCP 建立连接和断开连接的网络包。另外,TCP 有一个特性叫做 slow start,其含义可以大致这样解释:TCP 连接要求发送端发送一定数量的网络包之后接收端就要回一个“我收到”的网络包,而且网络包在经过每个路由器的时候包头都要被重写,所以在网络不丢包的情况 下网络包越大网络的效率就越高。TCP 连接寻找最优网络包大小的方法是,在 TCP 连接建立的初期,网络包的大小是很小的,根据网络状况,两端的程序才会逐步增大网络包的大小以适应带宽提高网络传输的效率。所以浏览器给服务器发请求,如 果每发一个请求就关闭连接的话,那这个连接的数据传输很难达到带宽所能承载的速度。
基于这种种原因,HTTP/1.1 很快出来了,提出了持久连接(persistent connection)的概念,也就是说同一条 HTTP 连接,可以依次处理多个请求,同时用一定的机制保证各个请求之间的分离性。具体的操作过程是:服务器给浏览器发送回应之后,并不马上关闭连接;浏览器判断 上一个请求的回应已经收完的情况下,可以在这同一个连接上发第二个请求。这种运作模式大大减少了网络包,实验也表明这种做法很有效。但是,由于服务器上保 持连接要占用一定的资源,所以一般服务器不会永久保持持久连接,而且也不推荐浏览器和服务器之间建立过多的持久连接。
持久连接可以进一步提速。这就是 pipelining 了。上面可以看到,浏览器需要等待持久连接里上一个请求的回应完全收完才能发送后面的请求。如果和服务器的连接比较慢,往往持久连接大部分时间都花在等待 而非数据发送/接收上。pipelining 的意思是,浏览器可以在一个持久连接里一次给服务器发送多个请求,服务器在这个连接上依次回应这些请求。这种运作方式和浏览器缓存结合起来的时候会尤其有 效果。比方,图片浏览过后会存在浏览器缓存中,再次请求的时候浏览器会对服务器说,我这里已经有这个图片的缓存了,修改时间是XXXX,如果服务器上这个 图片在这之后没有修改过,就不用重发了。这种情况下,服务器会发一个很短的 304 Not Modified 类型的回应。如果没有 pipelining,每次这样问一下都要等待网络上传输打一个来回;而如果有 pipelining,浏览器可以同时问服务器我这里 4 个图片是否有修改,如果服务器对 pipelining 支持的好,它甚至可以将四个回应放到同一个网络包里面传回来,这是一个大大的加速。
pipelining 最早提出的时候还有一种设想的用法是,如果服务器对 pipelining 支持的好,可以把同一个 pipeline 里面的两个请求放到两个 CPU 上去处理,这样能进一步加快响应速度。当然这个可能也没什么用。
好咯,回过来看一下 firefox about:config network.http.* 的相关参数
network.http.keep-alive 默认是 true
是否允许持久连接,这个默认就是 true,改成 false 的是大傻瓜。
network.http.keep-alive.timeout 默认是 300
持久连接允许的保持时间,这个调大了没意义,因为一般 server 设置的就是 300。
server 把你咔嚓了你还能有什么办法。
network.http.max-connections-per-server 默认是 8
连接同一个服务器允许的最大连接数,一般认为在开启持久连接的情况下把这个数值调大没什么作用,而且不太道德。需要调大的情况比方:你同时从网站下 10 个大文件。
network.http.max-persistent-connections-per-server 默认是 2
连接同一个服务器允许的最大持久连接数,这个数值 HTTP/1.1 标准推荐的是 2。调大了反而增加你自己的网络消耗,而且一般一个服务器允许的持久连接数是有限的,你调大了就可能造成别人可用的减少,如果大家都调大,就意味着网络效 率的丧失。我个人建议不要动这个数值。
network.http.pipelining 默认是 false
是否允许 pipelining,这个功能因为目前还是试验阶段,所以默认没有打开。强烈建议打开。
network.http.pipelining.maxrequests 默认是 4
每个持久连接允许一次发送的请求数。如果 pipeline 里面有一个大图片或者执行时间较长的脚本,后面已经发送的请求就会被阻塞(注意服务器必须是依次回应请求);而在这种情况下,如果没有使用 pipelining,浏览器发现一个请求处理时间很长,自然会使用另一条持久连接用作后续请求,甚至进一步开启非持久连接。另外,如果服务器支持 pipelining 不好而过早的关闭连接,浏览器势必要重新发送请求。基于这种种原因,有人认为这个数字设置得比 2 大反而会降低浏览速度。我个人的推荐是,这个数值一般情况可以保持默认值 4,如果浏览的网站有大量的静态小图片,或者网络速度较慢,可以尝试将其调大。
network.http.max-persistent-connections-per-proxy 默认是 4
每个代理服务器允许的最大持久连接数。4 是目前比较公认的最合适的数值,尽管HTTP/1.1 的推荐值是 2。
network.http.proxy.keep-alive 默认是 true
连接代理服务器是否允许持久连接。true 挺好的。
network.http.proxy.pipelining 默认是 false
连接代理服务器是否允许 pipelining。目前普遍认为大多数代理服务器支持 pipelining 并不好,所以一般不建议打开。
pipelining 目前是一个有争议的,仍旧在实验阶段的特性。虽然它可能确实会加快浏览速度,但是这在一定程度上取决于网络的各项因素,所以不要盲目的按照网上建议的方式设置相关的参数。
This weblog is licensed under a Creative Commons License.
Powered by WordPress. Theme based on Pool by Borja Fernandez.







