Skip to content

四火的唠叨

一个纯正程序员的啰嗦

Menu
  • 所有文章
  • About Me
  • 关于四火
  • 旅行映像
  • 独立游戏
  • 资源链接
Menu

Category: Network and Communication

用 SOCKS5 代理翻墙

Posted on 06/07/201310/02/2024 by 四火

scaleWall SOCKS 代理它分 SOCKS4 和 SOCKS5 两种类型,前者只支持 TCP 协议而后者支持 TCP/UDP 协议,还支持各种身份验证机制等协议。它和 HTTP 这种应用层的代理不同,它只负责传输数据包,不管应用层的协议,相较而言速度要更快。

3Proxy 是俄罗斯人 3APA3A 和 Vladimir Dubrovin 编写的开源代理服务软件,功能强大。我给我一台在美国的 VPS 主机安装了 3Proxy,开启了 SOSKS5 的代理服务:

system "echo 3proxy is running now"
daemon
nscache 65536
users username:CL:password
auth stro

[……]阅读全文

Continue reading

网络爬虫

Posted on 05/26/201306/23/2019 by 四火

最近在写一个程序,去爬热门事件和热门关键词网站上的数据。在这里介绍一下网络爬虫的种种。

基本组件

image

网络爬虫也叫做网络蜘蛛,是一种互联网机器人,把需要的网页撷取下来,组织成适当格式存储。它是搜索引擎的重要组成部分,虽然从技术实现上来说,它的难度往往要小于对于得到的网页信息的处理。

上面这张图来自维基百科,scheduler 调度多个多线程的下载器下载网页,并把信息和元数据存储起来。而通过解析下载网页的数据,找到链接,又把链接加入到工作队列中去准备下载。这看起来是一个迭代的过程。

网络爬虫相关的几项重要策略:

  • 选择策略:哪些网页是需要被抓取的;
  • 重访问策略:怎样的方式去检测网页是否被修改过;

[……]阅读全文

Continue reading

HTTP 劫持

Posted on 04/30/201310/19/2019 by 四火

想谈一谈这个话题是因为最近有一位朋友抱怨他的博客在某些用户某些时候访问的时候,被莫名其妙地加上了广告,他检查来检查去,始终发现不了网站本身有什么问题,后来他才了解到了 HTTP 劫持一说。

HTTP 劫持

其实这不是一个新概念了,在几年前,中国一些不讲道德的运营商,尤其是地方运营商就开始捕捉用户浏览器的访问记录,然后根据不同用户的访问行为,有选择地往用户访问的网页里面推送广告。他们可以为所欲为地强制改写网站 HTML 页面,采用往返回页面里写入 JavaScript 等方式,来注入广告:

image

这是访问 55BBS 网站时某些用户会在屏幕右下角看到一个京东商城的广告。这样的广告,不但可以在一 [……]阅读全文

Continue reading

如何在局域网内抢带宽

Posted on 10/06/201206/23/2019 by 四火

3 事情的起因是最近家里买了一台 60 寸的智能电视,支持点播(VOD)功能,家里的网络带宽理论上只有 4M,在播放的时候,就会占用大量网络带宽,导致我同时上网浏览网页都很困难。

有没有办法给限制局域网内某台主机的流量?首先,还是得从 TCP 的原理说起。

TCP 拥塞控制

TCP 是个君子协议,在拥塞控制的设计(RFC 2851)中包括慢开始、拥塞避免、快重传和快恢复 4 种算法。

c

拥塞窗口(cwnd)和接收端窗口(rwnd)二者的最小值确定了发送窗口的上限值,而实际上对于现今的网卡,接收端窗口的大小是可以很大的,也就是说,拥塞主要寄希望于拥塞窗口来控制,拥塞窗口直接决定了传输的速率。从上面这张图可

[……]阅读全文

Continue reading

酒桌上的计算机网络

Posted on 12/11/201106/23/2019 by 四火

alcohol 宴开始。

 

酒杯盛酒,酒杯碰撞,这是物理层;

你要根据不同人的外貌特征找到你要敬酒的人所坐的位置,这是 IP 协议(网络层);

你明白,敬酒的实际目的是加深感情,这在应用层,而这酒中的感情,才是报文的数据部分。

 

你和某位新见面的兄弟互相来回敬酒,这叫 TCP;

你给同一位好兄弟敬酒好多次,死命灌他,他也不回礼,这叫 UDP;

你对全桌的人说,来,咱们同归于尽,这叫广播;

你在对这一桌的人顺序挨个敬酒,这叫令牌环。

 

 

你对该兄弟说,初次见面,请多关照,请问阁下尊姓大名,敬酒一杯,这叫 SYN 报文;

这位兄弟说,同是天涯沦落人,

[……]阅读全文

Continue reading

IE6,别急着说再见

Posted on 08/12/201110/02/2024 by 四火

没有一款浏览器能比 IE6 给前端开发更带来困扰了,IE6 的 Bug 和对标准的无视(其实 IE 各个版本都习惯于对标准的无视)已经到了令人发指的地步,
比如 IE6 的 JavaScript 解析在 GZip 压缩下问题一堆,微软自己都说没有办法,换浏览器吧;
比如 IE6 对样式的规定乱七八糟,看这个;
比如 IE6 上使用 PNG 还要加上一个带来 N 多挂死问题的滤镜……

终于微软也忍不住了,要专门给 IE6 清理全球最困难的钉子户中国开小灶了:
http://theie6countdown.cn/

微软自己都说了:

能为大家服务十年,已付出了我毕生的心血,尤其感谢中国,中国人民最可爱,因为直到今日,依然对我不离不弃。
可我得说,我还

[……]阅读全文

Continue reading

订阅·联系

四火,啰嗦的程序员一枚,现居西雅图

Amazon Google Groovy Hadoop Haskell Java JavaScript LeetCode Oracle Spark 互联网 亚马逊 前端 华为 历史 同步 团队 图解笔记 基础设施 工作 工作流 工具 工程师 应用系统 异步 微博 思考 技术 数据库 曼联 测试 生活 眼界 程序员 管理 系统设计 缓存 编程范型 美股 英语 西雅图 设计 问题 面向对象 面试

分类

  • Algorithm and Data Structure (30)
  • Concurrency and Asynchronization (6)
  • System Architecture and Design (43)
  • Distributed System (18)
  • Tools Frameworks and Libs (13)
  • Storage and Data Access (8)
  • Front-end Development (33)
  • Programming Languages and Paradigms (55)
  • Testing and Quality Assurance (4)
  • Network and Communication (6)
  • Authentication and Authorization (6)
  • Automation and Operation Excellence (13)
  • Machine Learning and Artificial Intelligence (6)
  • Product Design (7)
  • Hiring and Interviews (14)
  • Project and Team Management (14)
  • Engineering Culture (17)
  • Critical Thinking (25)
  • Career Growth (57)
  • Life Experience and Thoughts (45)

推荐文章

  • 聊一聊分布式系统中的时间
  • 谈谈分布式锁
  • 常见分布式系统设计图解(汇总)
  • 系统设计中的快速估算技巧
  • 从链表存在环的问题说起
  • 技术面试中,什么样的问题才是好问题?
  • 从物理时钟到逻辑时钟
  • 近期面试观摩的一些思考
  • RSA 背后的算法
  • 谈谈 Ops(汇总 + 最终篇):工具和实践
  • 不要让业务牵着鼻子走
  • 倔强的程序员
  • 谈谈微信的信息流
  • 评审的艺术——谈谈现实中的代码评审
  • Blog 安全问题小记
  • 求第 K 个数的问题
  • 一些前端框架的比较(下)——Ember.js 和 React
  • 一些前端框架的比较(上)——GWT、AngularJS 和 Backbone.js
  • 工作流系统的设计
  • Spark 的性能调优
  • “残酷” 的事实
  • 七年工作,几个故事
  • 从 Java 和 JavaScript 来学习 Haskell 和 Groovy(汇总)
  • 一道随机数题目的求解
  • 层次
  • Dynamo 的实现技术和去中心化
  • 也谈谈全栈工程师
  • 多重继承的演变
  • 编程范型:工具的选择
  • GWT 初体验
  • java.util.concurrent 并发包诸类概览
  • 从 DCL 的对象安全发布谈起
  • 不同团队的困惑
  • 不适合 Hadoop 解决的问题
  • 留心那些潜在的系统设计问题
  • 再谈大楼扔鸡蛋的问题
  • 几种华丽无比的开发方式
  • 我眼中的工程师文化
  • 观点的碰撞
  • 谈谈盗版软件问题
  • 对几个软件开发传统观点的质疑和反驳
  • MVC 框架的映射和解耦
  • 编程的未来
  • DAO 的演进
  • 致那些自嘲码农的苦逼程序员
  • Java 多线程发展简史
  • 珍爱生命,远离微博
  • 网站性能优化的三重境界
  • OSCache 框架源码解析
  • “ 你不适合做程序员”
  • 画圆画方的故事

近期评论

  • Ticket: TRANSACTION 1.922915 BTC. Go to withdrawal >> https://yandex.com/poll/enter/BXidu5Ewa8hnAFoFznqSi9?hs=20bd550f65c6e03103876b28cabc4da6& on 倔强的程序员
  • panshenlian.com on 初涉 ML Workflow 系统:Kubeflow Pipelines、Flyte 和 Metaflow
  • panzhixiang on 关于近期求职的近况和思考
  • Anonymous on 闲聊投资:亲自体验和护城河
  • 四火 on 关于近期求职的近况和思考
  • YC on 关于近期求职的近况和思考
  • mafulong on 常见分布式基础设施系统设计图解(四):分布式工作流系统
  • 四火 on 常见分布式基础设施系统设计图解(八):分布式键值存储系统
  • Anonymous on 我裸辞了
  • https://umlcn.com on 资源链接
© 2025 四火的唠叨 | Powered by Minimalist Blog WordPress Theme