计算机网络
文章平均质量分 89
修炼内功~
anlian523
人若无名,专心练剑!
展开
-
TCP/IP协议详解卷一 第13章 TCP连接管理 知识点浅析
TCP连接的建立与终止一个TCP连接是由一个4元祖构成的,即两个IP地址,连个端口号。更准确地说,一个TCP连接是由一对端点或套接字构成,其中通信的每一端都由一对(IP地址,端口号)所唯一标识。一个TCP连接通常分为3个阶段:建立连接、数据传输(连接已建立)、关闭连接。下面描述一次TCP连接的建立和关闭过程。连接过程:客户端发送一个SYN报文段(即一个在TCP头部的SYN位字段置位的TCP/IP数据包),并指明自己想要连接的端口号和它的客户端初始序列号(记为ISN©)。服务器接收到客户端发送的S原创 2021-12-26 22:15:34 · 2298 阅读 · 0 评论 -
TCP/UDP伪头部讲解
前言我们知道IPv4的校验和只覆盖IP协议的头部,它每经过一个路由器都要重新计算IP协议的校验和,因为IPv4有一个TTL字段每经过一个路由器都要减1。而传输层协议(TCP和UDP)的校验和是覆盖它们的头部和数据的。UDP伪头部以UDP的伪头部为例讲解:最后的单个填充字节因为校验和算法是以16bit为单位的,但UDP数据报长度可以是奇数个字节,所以如果整个UDP分组是奇数个字节,那么会虚拟地加上最后一个字节(如上图,最后一个字节),用以保证能有偶数个字节。但这个虚拟的最后这个字节,不会真的被传原创 2021-11-29 23:52:50 · 4976 阅读 · 0 评论 -
wireshark 抓包ARP分组
从下图的报文数据的结构来看,ARP协议属于是网络层协议,因为它被封装在了以太网帧中(从包封装的角度来讲)。但从功能上来说,ARP是为了获得获取到MAC地址,所以也可以说是属于链路层协议。Who has 192.168.0.1? Tell 192.168.0.101。翻译过来就是,谁是192.168.0.1,请告诉我192.168.0.101。从ARP的字段上看,7e:90:3c:47:04:0a这个设备和192.168.0.101绑定在了一起,它想知道192.168.0.1的MAC地址是什么,所以Ta原创 2021-11-23 22:38:52 · 10325 阅读 · 1 评论 -
校验和算法原理
读者需要先理解反码数的加法,它和正常数(即补码)的加法不一样。它会对错误式子的结果加1,这是一种修正操作。原创 2021-11-22 23:23:17 · 2593 阅读 · 0 评论 -
计算机网络自顶向下.6e 第4章 网络层 知识点浅析
前言与应用层和运输层不同的是,在网络中的每一台路由器或主机中都有一个网络层部分。当然,如上图,如果有了网络层,那也必然会有下面的数据链路层和物理层。所以,路由器不会运行 应用层、运输层协议。概述转发和路由选择网络层的作用从表面上很简单,就是把分组从一台发送主机(电脑或路由器)移动到一台接收主机。为此,需要两种功能:转发(forwarding)。当一个分组到达路由器的一条输入链路时,路由器必须将该分组移动到适合的输出链路上去。这是一个路由器的本地动作。路由选择(routing)。当一个分组从发原创 2021-11-17 21:25:01 · 1210 阅读 · 0 评论 -
TCP报文段的数据长度是如何计算得到的
IP的总长度 - IP的头部长度- TCP的头部长度 = TCP的Data的长度原创 2021-10-27 01:06:27 · 21951 阅读 · 6 评论 -
计算机网络 对Reno算法的优化——NewReno算法
实例分析Reno和NewReno我们假设当前处于拥塞避免状态。如下图,[0-11]的这个窗口内的12个数据包从发送方发送。不过1、4数据包还没到达接收方就丢失了。一般情况下,发送方发送了seq=0,len=1的数据包后,接收方回复的ACK包为ack=1,代表接收方接下来期待的是序号seq从1的数据包。但本节例子为了简便表示,发送方发送了Data[0]后,接收方回复的是ACK[0],但代表的同样是 接收方接下来期待的是Data[1]以及以后的数据。Reno的不足之处收到的第一个ACK[0.原创 2021-10-22 01:02:46 · 1823 阅读 · 2 评论 -
计算机网络 理解拥塞控制
TCP的流量控制服务完成了对发送方发送速率的调节——当TCP通信的接收方的接收速率无法匹配发送速率时,发送方会降低发送速率。但流量控制没有考虑到整个网络中的情况——即使路由器能够存储一些数据,但若源源不断的数据到达速率高于路由器的发出速率,任何容量的路由器都会溢出。路由器因无法处理高速率到达的流量而被迫丢弃数据的现象被称为——拥塞。从流量控制服务可知,针对于丢包情况,TCP采取的首要机制是重传,包括超时重传和快速重传。但如果网络已经处于了拥塞状态,你再进行重传,会导致同一时间段内网络传输路径上需要原创 2021-08-25 22:26:24 · 1557 阅读 · 0 评论 -
计算机网络 理解流量控制与SACK机制
如果应用进程读取数据时相对缓慢,而发送方发送得太多、太快,发送的数据就会很容易地使得接收缓存溢出。所以TCP为它的应用进程提供了流量控制服务(flow-control service)以消除接收缓存溢出的可能性。流量控制实际上是一个速度匹配服务,即发送方的发送速率与接收方应用程序的读取速率相匹配。原创 2021-08-18 22:09:44 · 1666 阅读 · 0 评论 -
为什么TCP三次握手的时候ACK=Seq+1
简而言之,接收方反馈的ACK之所以加1,是因为发送方包含了SYN标志位或FIN标志位。也就是说,只要发送方包含了 SYN标志位或FIN标志位,即使没有包含数据,接收方也得认为 发送方消耗掉了一个序号。另外,带有 SYN标志位或FIN标志位的报文段(在三次握手和四次挥手中),也是不允许携带数据的。原创 2021-08-14 19:42:50 · 3004 阅读 · 0 评论 -
计算机网络 可靠数据传输原理——从rdt协议到GBN到SR
TCP处于运输层中,虽然下层协议——网络层协议是不可靠的,但TCP必须为它的上层提供一种可靠数据传输协议(reliable data transfer protocol)。这种协议提供的服务为:数据可以通过一条可靠的信道进行传输。借助于可靠信道,传输数据比特就不会受到损坏或丢失,而且所有数据都是按照其发送顺序交付给接受方。原创 2021-02-28 16:32:44 · 5369 阅读 · 4 评论