![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图解TCP/IP
文章平均质量分 89
全栈ing小甘
成为一个全干工程师
展开
-
TCP首部格式【TCP原理(笔记五)】
TCP首部格式源端口号(Source Port)目标端口号(Destination Port)序列号(Sequence Number)确认应答号(Acknowledgement Number)数据偏移(Data Offset)保留(Reserved)控制位(Control Flag)窗口大小(Window Size)校验和(Checksum)紧急指针(Urgent Pointer)选项(Options)原创 2023-07-20 00:03:14 · 1234 阅读 · 2 评论 -
TCP的拥塞控制、提高网络利用率的方法【TCP原理(笔记四)】
为了在发送端调节所要发送数据的量,定义了一个叫做“拥塞窗口”的概念。于是在慢启动的时候,将这个拥塞窗口的大小设置为1个数据段(1MSS)(连接建立以后即刻从1MSS开始进行慢启动的话,通过卫星通信等手段提高通信吞吐量所耗的时间会比较长。为此,有时也会将慢启动的初始值设置大于1MSS的值。具体来说,MSS的值小于1095字节时最大为4MSS,小于2190字节时最大为4390字节,超过2190字节时最大值大于2MSS。以太网的标准MSS值为1460字节,因此慢启动的初始值从4380字节(3MSS)开始就可以。)原创 2023-07-19 23:40:49 · 537 阅读 · 0 评论 -
TCP的窗口控制和重发控制【TCP原理(笔记三)】
TCP中的窗口控制机制可以使得即便某些确认应答丢失,发送方无需重发对应的数据。这是通过TCP的选择确认机制(Selective Acknowledgment,SACK)来实现的。使用了SACK选项后,接收方可以在ACK中指明哪些数据段已经成功接收,同时也指明哪些数据段还未接收到。这样,发送方就知道了具体哪些数据段需要进行重传,而不必等待超时,提高了传输效率。SACK选项提供了更精确的信息,使得发送方能够快速重传仅丢失的数据段,而不必重传已经成功接收的数据段。这样可以避免不必要的重传,提高整体速度。原创 2023-07-17 15:58:53 · 1493 阅读 · 0 评论 -
TCP的三次握手以及以段为单位发送数据【TCP原理(笔记二)】
TCP会在数据通信之前,通过TCP首部发送一个SYN包作为建立连接的请求等待确认应答(TCP中发送第一个SYN包的一方叫做客户端,接收这个的一方叫做服务端。) 。如果对端发来确认应答,则认为可以进行数据通信。如果对端的确认应答未能到达,就不会进行数据通信。此外,在通信结束时会进行断开连接的处理(FIN包)。原创 2023-07-17 01:11:01 · 498 阅读 · 0 评论 -
确认应答机制与超时重发机制【TCP原理(笔记一)】
确认应答机制的基本原理发送方将数据分割成称为TCP段(TCP segment)的较小单元,并为每个段分配一个唯一的序列号。发送方将这些TCP段发送给接收方,并启动一个定时器来跟踪每个已发送段的确认。接收方收到TCP段后,将按序将它们重新组装成完整的数据流,并发送一个确认(ACK)给发送方。确认中包含接收到的最高序列号,表示该序列号之前的所有数据都已正确接收。发送方在接收到确认后,会停止相应定时器,并继续发送下一个序列号的TCP段。如果发送方在定时器超时之前未收到确认,它将重新发送未确认的TCP段原创 2023-07-17 00:10:44 · 1534 阅读 · 1 评论 -
两种传输层协议TCP和UDP【图解TCP/IP(笔记十二)】
UDP不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且它是将应用程序发来的数据在收到的那一刻,立即按照原样发送到网络上的一种机制。为了通过IP数据报实现可靠性传输,需要考虑很多事情,例如数据的破坏、丢包、重复以及分片顺序混乱等问题。如不能解决这些问题,也就无从谈起可靠传输。TCP通过检验和、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠性传输。原创 2023-07-12 16:45:07 · 891 阅读 · 0 评论 -
什么是端口号【图解TCP/IP(笔记十一)】
数据链路和IP中的地址,分别指的是MAC地址和IP地址。前者用来识别同一链路中不同的计算机,后者用来识别TCP/IP网络中互连的主机和路由器。在传输层中也有这种类似于地址的概念,那就是端口号。端口号用来识别同一台计算机中进行通信的不同应用程序。因此,它也被称为程序地址。原创 2023-07-12 16:29:16 · 3710 阅读 · 2 评论 -
IP地址【图解TCP/IP(笔记十)】
IP地址(IPv4地址)由32位正整数来表示。TCP/IP通信要求将这样的IP地址分配给每一个参与通信的主机。IP地址在计算机内部以二进制(二进制是指用0、1表示数字的方法。) 方式被处理。然而,由于人类社会并不习惯于采用二进制方式,需要采用一种特殊的标记方式。那就是将32位的IP地址以每8位为一组,分成4组,每组以“.”隔开,再将每组数转换为十进制数(这种方法也叫做“十进制点符号”(Dot-decimal notation)。) 。原创 2023-07-11 23:00:01 · 5588 阅读 · 1 评论 -
IP协议【图解TCP/IP(笔记九)】
IP(IPv4、IPv6)相当于OSI参考模型中的第3层——网络层。网络层的主要作用是“实现终端节点之间的通信”。这种终端节点之间的通信也叫“点对点(end-to-end)通信”。网络层的下一层——数据链路层的主要作用是在互连同一种数据链路的节点之间进行包传递。而一旦跨越多种数据链路,就需要借助网络层。网络层可以跨越不同的数据链路,即使是在不同的数据链路上也能实现两端节点之间的数据包传输。原创 2023-07-10 23:26:19 · 2219 阅读 · 0 评论 -
TCP/IP出现的背景及其历史【图解TCP/IP(笔记八)】
ARPANET的实验,不仅仅是利用几所大学与研究机构组成的主干网络进行分组交换的实验,还会进行在互连计算机之间提供可靠传输的综合性通信协议的实验。于是在20世纪70年代前半叶,ARPANET中的一个研究机构研发出了TCP/IP。在这之后,直到1982年,TCP/IP的具体规范才被最终定下来,并于1983年成为ARPANET网络唯一指定的协议。原创 2023-07-10 00:28:04 · 1185 阅读 · 0 评论 -
网络的构成要素【图解TCP/IP(笔记七)】
计算机之间通过电缆相互连接。任何一台计算机连接网络时,必须要使用网卡(全称为网络接口卡)。中继器(Repeater)是在OSI模型的第1层——物理层面上延长网络的设备。网桥是在OSI模型的第2层——数据链路层面上连接两个网络的设备。路由器是在OSI模型的第3层——网络层面上连接两个网络、并对分组报文进行转发的设备。4~7层交换机负责处理OSI模型中从传输层至应用层的数据。网关是OSI参考模型中负责将从传输层到应用层的数据进行转换和转发的设备。原创 2023-07-09 01:51:04 · 1698 阅读 · 0 评论 -
计算机通信地址【图解TCP/IP(笔记六)】
网络传输中,每个节点会根据分组数据的地址信息,来判断该报文应该由哪个网卡发送出去。为此,各个地址会参考一个发出接口列表。在这一点上MAC寻址与IP寻址是一样的。只不过MAC寻址中所参考的这张表叫做地址转发表,而IP寻址中所参考的叫做路由控制表(目前,地址转发表和路由控制表并不需要在网络中的各个节点上手动设置,而是由这些节点自动生成的。地址转发表根据自学自动生成。路由控制表则根据路由协议自动生成。) 。MAC地址转发表中所记录的是实际的MAC地址本身,而路由表中记录的IP地址则是集中了之后的网络号。原创 2023-07-08 17:51:48 · 920 阅读 · 0 评论 -
传输方式的分类【图解TCP/IP(笔记五)】
面向有连接型中,在发送数据之前,需要在收发主机之间连接一条通信线路(在不同的分层协议中,连接的具体含义可能有所不同。在数据链路层中的连接,就是指物理的、通信线路的连接。而传输层则负责创建与管理逻辑上的连接。) 。面向无连接型则不要求建立和断开连接。发送端可于任何时候自由发送数据。反之,接收端也永远不知道自己会在何时从哪里收到数据。因此,在面向无连接的情况下,接收端需要时常确认是否收到了数据。原创 2023-07-08 17:24:36 · 1146 阅读 · 0 评论 -
OSI参考模型通信处理例子【图解TCP/IP(笔记四)】
发送方从第7层、第6层到第1层由上至下按照顺序传输数据,而接收端则从第1层、第2层到第7层由下至上向每个上一级分层传输数据。每个分层上,在处理由上一层传过来的数据时可以附上当前分层的协议所必须的“首部”信息。然后接收端对收到的数据进行数据“首部”与“内容”的分离,再转发给上一分层,并最终将发送端的数据恢复为原状。原创 2023-07-07 22:37:49 · 715 阅读 · 0 评论 -
协议分层与OSI参考模型【图解TCP/IP(笔记三)】
协议分层就如同计算机软件中的模块化开发。OSI参考模型的建议是比较理想化的。它希望实现从第一层到第七层的所有模块,并将它们组合起来实现网络通信。分层可以将每个分层独立使用,即使系统中某些分层发生变化,也不会波及整个系统。因此,可以构造一个扩展性和灵活性都较强的系统。此外,通过分层能够细分通信功能,更易于单独实现每个分层的协议,并界定各个分层的具体责任和义务。这些都属于分层的优点。原创 2023-07-06 21:29:29 · 743 阅读 · 0 评论 -
网络协议【图解TCP/IP(笔记二)】
这种“约定”使那些由不同厂商的设备、不同的CPU以及不同的操作系统组成的计算机之间,只要遵循相同的协议就能够实现通信。反之,如果所使用的协议不同,就无法实现通信。虽然语言是人类才具有的特性,但计算机与计算机之间通过网络进行通信时,也可以认为是依据类似于人类“语言”实现了相互通信(与之相似,我们在日常生活中理所当然的一些行为,很多情况下都与“协议”这一概念不谋而合。即使是从物理层面上连接了两台异构的计算机,由于它们之间采用的网络体系结构不同,支持的协议不同,仍然无法实现正常的通信。原创 2023-07-06 20:59:23 · 2284 阅读 · 2 评论 -
计算机与网络发展的7个阶段【图解TCP/IP(笔记一)】
例如,曾经一直作为通信基础设施、支撑通信网络的电话网,随着互联网的快速发展,其地位也随着时间的推移为IP(Internet Protocol)网所取代,而IP网本身就是互联网技术的产物。在现实当中,人们可以通过远离险境避开一些危险,然而对于连接到互联网的计算机而言,即使是在办公室或在自己的家里也有可能会受到网络所带来的诸多侵害。有了计算机间的通信技术(计算机与计算机之间由通信线路连接),人们能够很轻松地即时读取另一台计算机中的数据,从而极大地缩短了传送数据的时间。计算机间的通信显著地提高了计算机的可用性。原创 2023-07-06 20:34:40 · 946 阅读 · 0 评论