计算机网络
@另维吖
种一棵树最好的时间是十年前,其次是现在。
展开
-
HTTP 的重定向应用场景和常见问题
跳转原创 2020-08-19 23:06:54 · 2095 阅读 · 0 评论 -
Wireshark 抓包分析 HTTP 请求、响应报文格式
文章目录报文结构HTTP 请求报文的请求行请求方法GET/HEADPOST/PUT其他方法URIURI 的格式URI 的编码HTTP 响应报文的状态行状态码HTTP 请求、响应头部字段HTTP 协议再规范文档里详细定义了报文的格式,规定了组成部分,解析规则,还有处理策略,所以可以在 TCP/IP 层之上实现丰富灵活的功能,例如连接控制、缓存管理、数据编码、内容协商报文结构HTTP 协议是一个”纯文本“的协议,在实际传输的数据前要附加一些头数据,不过头数据都是ASCII码的文本,可以很容易地用肉眼阅读,原创 2020-08-19 14:29:55 · 17783 阅读 · 1 评论 -
Wireshark 抓包分析-使用网址、域名访问 Web 服务器后面发生了什么?
使用 IP 地址访问 Web 服务器首先打开 Wireshark,选择 ”HTTP TCP port(80)“ 过滤器,再鼠标双击 ”Npcap loopback A dapter“,开始抓取本机 127.0.0.1 地址上的网络数据。接着在 Chrome 浏览器地址栏输入”http://127.0.0.1/“,再按下回车键,等欢迎页面显示出来后 Wireshark 就会有铺获的数据包。如下:抓包分析在 Wireshark 里可以看到,一共抓取 11 个包,耗时约 0.65 秒,接着看按下回车后数原创 2020-08-19 12:05:02 · 9378 阅读 · 0 评论 -
DNS协议:网络世界的地址簿-域名解析和负载均衡
当我们在网咯上冲浪的时候面对的网站特别多,如果全部用 IP 地址进行访问,恐怕很难记住。于是,就需要一个地址簿,根据名称,产看具体的地址。DNS 服务器我们冲浪时候可以记住一些网站名称,但是详细的 IP 相较之就比较难,因而也需要一个地址簿,就是DNS 服务器。由此 DNS 在日常生活中多么重要,人们上网需要访问他,这对它来讲也是巨大挑战。一旦出了故障,整个互联网将瘫痪。另外,上网的人分布在全世界各地,如果大家都去同一个地方,访问一台服务器,时延将非常大。因而,DNS 服务器,一定要设置成高可用、高并原创 2020-07-13 23:27:49 · 426 阅读 · 0 评论 -
HTTPS 协议:点外卖的过程原来这么麻烦
用 HTTP 协议,看个新闻还没有问题,但是换到涉及财务交易场景中,就存在很多的安全风险。例如,要下单支付,如果还用 HTTP 协议,很有很能被黑客盯上哦。比如你发送一个点外卖的请求,这个网路包被截获了,若在服务器恢复你之前,黑客假装自己是外卖网站,然后给你回复一个假消息:“银行卡号,密码”。这时候发过去不就出事了?怎么解决这个问题呢?一般的思路就是加密。加密分为两种方式一种是对称加密,一种是非对称加密。在对称加密算法中,加密和解密使用的密钥是相同的。也就是说,加密和解密使用的是同一个密码。因此,对称原创 2020-07-12 22:49:11 · 195 阅读 · 0 评论 -
应用层 HTTP 协议:浏览网页原来有这么复杂的过程
HTTP 协议几乎是每个人上网用的第一个协议。比如看新闻我们会登录 http://www.163.comhttp://www.163.com 是个 URL,叫作统一资源定位符。之所以叫统一,是因为它是由格式的。其中 HTTP 称为协议,www.163.com 是一个域名,表示互联网上的一个位置。由的 URL 会有更详细的位置标识,例如 http://www.163.com/index.html 。正是因为这个东西是统一的,所以当你把这样一个字符串输入到浏览器的框里时,浏览器才知道如何进行统一处理。HTT原创 2020-07-03 12:48:22 · 3778 阅读 · 0 评论 -
如何做到靠谱—传输层协议 TCP(下)
文章目录TCP 如何做到靠谱?如何实现一个靠谱的协议?顺序问题和丢包问题确认与重发机制流量控制问题拥塞控制问题小结我们前面说到玄奘西行,要出网关。既然出了网关,那就是在公网上传输数据,公网往往是不可靠的,因而需要很多的机制去保证传输的可靠性,这里面需要恒心,也即各种重传的策略,还需要有智慧,也就是说,这里面包含着大量的算法。TCP 如何做到靠谱?对应到网络协议上,就是客户端每发送的一个包,服务器端都应该有个回复,如果服务器端超过一定的时间没有回复,客户端就会重新发送这个包,直到有回复。这个发送应答的原创 2020-07-02 16:19:22 · 231 阅读 · 0 评论 -
连接维护及断开连接状态图--传输层协议 TCP(上)
TCP 包头格式源端口号和目标端口号是不可少的,这一点和 UDP 是一样的。如果没有这两个端口号,数据就不知道应该发给哪个应用。接下来是包的序号,为什么要给包编号?当然是为了解决乱序的问题。还应该有的就是确认序号。发出去的包应该有确认,要不然我怎么知道对方有没有收到呢?如果没有收到就应该重新发送,直到送达。这个可以解决不丢包的问题。TCP 是靠谱的协议,但是这不能说明它面临的网络环境好。从 IP 层面来讲,如果网络状况的确那么差,是没有任何可靠性保证的,而作为 IP 的上一层 TCP 也无能为力,原创 2020-07-02 12:45:32 · 575 阅读 · 0 评论 -
传输层单纯的UDP协议
文章目录TCP 和 UDP 有什么区别?UDP 包头是什么样的?UDP 的三大特点UDP 的三大应用场景实际案例中使用 UDP 的优势传输层有两个重要的协议,分别是 UDP 和 TCP,也是我们开发应用最常用的两个,而且说到 UDP 就会不免把 TCP 也拿出来。TCP 和 UDP 有什么区别?提到这两个我们常常会说,TCP 是面向连接,UDP 是面向无连接的。那么什么是面向连接,什么叫无连接?在互通之前,面向连接的协议会先建立连接。例如,TCP 会三次握手,而 UDP 不会。为什么要建立连接呢?原创 2020-06-30 19:03:52 · 681 阅读 · 0 评论 -
世界那么大,我要出网关
文章目录怎么在宿舍上网?你了解 MAC 和 IP 头的细节吗?关于网关静态路由是什么IP 头和 MAC 头哪些变、哪些不变?小结怎么在宿舍上网?之前买了交换机在宿舍组成局域网打局域网的游戏,现在允许宿舍开通网络了。学校给每个宿舍的网口分配了一个 IP 地址。这个 IP 是校园网的 IP,完全由网管部门控制。宿舍网的 IP 地址多为 192.168.1.x。校园网的 IP 地址,假设是 10.10.x.x。这个时候,你要在宿舍上网,有两个办法:第一个办法,让你们宿舍长再买一个网卡。这个时候,你们宿舍长原创 2020-06-30 17:22:40 · 224 阅读 · 0 评论 -
从物理层到MAC层:如何在宿舍组网玩联机游戏?
如果宿舍断网了,两个人想在联机打单机游戏,怎么连接两台电脑呢?使用路由器? 这个在 五层模型的第三层,我们先从第一层物理层开始说。物理层我们去配电脑的地方买网线,卖网线的老板都会问,你的网线是要电脑连电脑啊,还是电脑连网口啊?要是电脑连电脑。这种方式就是一根网线,有两个头。一头插在一台电脑的网卡上,另一头在另一个电脑的网卡上。但是很早的时候普通的网线是通不了的,所以水晶头要做交叉线,用的就是 1-3、2-6 交叉法。水晶头的1、2 和 3、6脚,分别起着收、发信号的作用。将一端的 1 号和 3 号原创 2020-06-30 10:02:33 · 2960 阅读 · 0 评论 -
如何配置 IP 地址—解析动态主机配置协议
文章目录如何配置 IP 地址?动态主机配置协议 (DHCP)解析 DHCP 的工作方式如何配置 IP 地址?如何配置呢?若用命令行自己配置一个地址。可以使用ifconfig,也可以使用 ip addr。设置好了以后,用这两个命令,将网卡 up 一下,就可以开始工作了。使用 net-tools: sudo ifconfig eth1 10.0.0.1/24 sudo ifconfig eth1 up使用 iproute2: sudo ip addr add 10.0.0.1/24 dev et原创 2020-06-29 15:30:42 · 5729 阅读 · 0 评论 -
以网购下单为例详细串讲碎片的网络协议(下)
中篇部分封装了一个长的网络包,准备开始发送。发送的时候是重重关隘,从手机到移动网络、互联网、还要经过多个运营商才能到达数据中心,到了数据中心就进入到第二个复杂的过程,从网关到 VXLAN 隧道,到负载均衡,到Controller 层、组合服务层、基础服务层,最终才下单入库。今天,我们就来看这最后一段过程。7. 流控拥塞与重传网络包已经组合完毕,接下来就是如何过网关到达目标公网 IP。PGW 在核心网机房的 IP 地址。网络包直到 PGW (PGW 是隧道的另一端) 才将里面的包解出来,转发到外部网络原创 2020-06-26 21:46:14 · 263 阅读 · 0 评论 -
以网购下单为例详细串讲碎片的网络协议(中)
在上篇中手机 APP 经过了一个复杂的过程,终于拿到了电商网站的 SLB 的 IP 地址,是不是该下单了?但其实大部分客户在购物之前要看很多商品图片,比较后才会点下单按钮,此时就开始建立连接。建立连接这个过程也比较复杂,最终经过层层封装,才构建出一个完成的网络包。接下来看看这个过程。4. 购物之前看图片,静态资源 CDN客户在购物网站买商品时,一般先去详情页看看图片,是不是需要的那一款。在部署电商应用的时候,一般把静态资源保存在两个地方,一个是接入层 nginx 后面的 varnish 缓存里面,原创 2020-06-26 20:37:34 · 374 阅读 · 0 评论 -
以网购下单为例详细串讲碎片的网络协议(上)
网购下单在我们手中简单的一步操作,在互联网世界真正要完成这个动作,过程其实很繁杂,这里把这个过程分为十个阶段,从云平台中搭建一个带你上开始,到 BGP 路由广播,再到 DNS 域名解析,从客户看商品图片,到最终下单的整个过程,每一步会详细说明。文章目录1. 部署一个高可用高并发的电商平台2. 大声告诉全世界,可以来这里买东西3. 打开手机来上网,域名解析得地址1. 部署一个高可用高并发的电商平台首先,咱们要有个电商平台。假设已经有了一个特别大的电商平台,这个平台应该部署在哪里呢?若我们用公有云,一般公原创 2020-06-26 18:59:41 · 1079 阅读 · 0 评论 -
网络为什么要分层—程序如何工作
文章目录开篇问题网络为什么要分层?程序是如何工作的?层与层之间的关系小结开篇问题TCP 在进行三次握手的时候,IP层和 Mac 层对应有什么操作呢?从原始地址 A 到目标地址 D,中间经过两个中转站 A->B->C->D,是通过路由转发的。那 A 知道自己的下一个中转站是 B,那从 A 发出来的包,应该把 B 的 IP 地址放在哪里呢?B 知道自己的下一个中转站是 C,从 B 发出来的包,应该把 C 的 IP 地址放在哪里呢?如果放在 IP 协议中的目标地址,那包到了中转站,怎么知原创 2020-06-26 14:15:47 · 448 阅读 · 0 评论 -
网络协议的初步认识-以详细案例分析
文章目录协议三要素常用的网络协议有哪些?以购物下单过程描述小结什么是协议?相当于正常交流必须掌握的一种规范,双发都懂的一种约束规则。比如要看发送和接收电报,需要有一个密码本来解密信息,这个密码本就是双方的协议。为什么会出现协议?互联网世界可以理解为机器间的交互,若需要两台机器完成某件事,那么这两台机器的“对话”双方必须都听得懂,我们不可能要求两台机器一模一样,就像不能要求两个人一样,所以为了方便交互就制定了协议,只要大家都用各自的方式看懂协议就能交流。协议三要素语法,就是一段内容要符合一定的规则和原创 2020-06-26 13:13:24 · 1230 阅读 · 0 评论