计算机网络
Ingsuifon
这个作者很懒,什么都没留下…
展开
-
分组交换
什么是分组交换?电路交换电路交换最早用于电话网络,两台电话之间用专有电线连接,一台电话只能和连在电线上的另一台电话通信。但实际上,为了能和其他人通信,专有电线会连接到交换中心。在交换中心,操作员会手工将输入的专有电线连接到待连接的电话的专有电线上。这里的重点是电线从通话开始到结束都是专有的。今天使用的电路交换网都是自动切换的。容易想到,打一个电话要经过三个阶段。首先,我们拿起听筒并拨号,拨打的号码说明了我们要连接的地方。这样就形成了从一端到另一端到专有电路,这样一来,专有电路将遍历所有电路,原创 2020-10-31 12:23:22 · 13328 阅读 · 9 评论 -
运输层总结
当今使用的最重要的三种运输层协议:TCP、UDP、ICMP(由于ICMP工作在网络层上面所以斯坦福的教授将它归为运输层协议)TCP传输控制协议,被超过95%的因特网应用程序使用。TCP被广泛使用,因为它提供了几乎所有应用程序都需要的可靠的、端到端的、双向的字节流服务。在前面的文章中,讲过了TCP如何检测数据包在途中丢失或损坏,TCP重新传输数据直至成功的机制。UDP用户数据报协议,由不需要TCP保证传输服务的应用程序使用,这些程序要么有自己的方式处理重传,要么它们根本不需要可靠的传输。UDP所做的只原创 2020-10-30 17:01:44 · 228 阅读 · 0 评论 -
TCP建立和关闭
问题可靠的通信通常得益于在连接的每一端都有某种状态问题:建立连接你是怎么建立这个状态的?问题:连接断开如何清理(重用端口等)连接建立3次握手红字部分是常见的3次握手,主动方发送SYN消息,并标识第一个字节从Sa开始(active到passive的字节流)。被动方监听到后返回SYN,并标识第一个字节从Sp开始(passive到active的字节流)。主动方收到后回复ACK消息,该消息的序号为Sa+1,ACK Num为Sp+1,消息长度为0。...原创 2020-10-29 13:39:32 · 207 阅读 · 0 评论 -
重传策略
1、问题有一组窗口大小的数据包正进行即时可靠传输使用累计确认消息每个包都有计时器协议如何表现?回退N步(Go-back-N):一个包丢失会导致整个窗口重传选择性重传(Selective Repeat):一个包丢失仅仅会重传那一个包2、回退N步假设N = 4,即发送窗口大小为4,发送端一次发送了数据包1,2,3,4,在传输过程中包2丢失。接收端收到包1后,返回ACK 1给发送端。接收端收到ACK 1后,滑动窗口右移,发送数据包5。一段时间后,接收方还没收到ACK 2,计时器到点后,原创 2020-10-29 10:48:37 · 737 阅读 · 0 评论 -
TCP的有限状态机
1、状态状态是系统的特定配置。2、TCP连接的状态首先,该图包含四个部分。顶部的4个状态描述了如何打开TCP连接;中间的状态“ESTABLISHED”说明TCP正发送和接收数据,它处于连接建立后和连接关闭前;下面的6个状态描述了连接如何关闭;底部的状态“CLOSED”表示连接已关闭,节点可以忘记它了。注意顶部的状态也是“CLOSED”,它在建立连接之前。图的上半部分描述了TCP建立连接的3次握手状态变化,下半部分描述了TCP关闭连接的两种情况:客户端发起关闭命令,同时发送FIN消息给服务端,从原创 2020-10-28 23:22:30 · 383 阅读 · 0 评论 -
端到端原则
The function in question can completely and correctly be implemented only with the knowledge and help of the application standing at the end points of the communication system. Therefore, providing that questioned function as a feature of the communication原创 2020-10-27 20:58:58 · 563 阅读 · 0 评论 -
ICMP服务模型
ICMP(Internet Control Message Protocol)是互联网消息控制协议,用于错误报告和诊断网络层问题。1、网络层工作的组成1. IP创建数据报一跳一跳传递它到另一端2. 路由表填充转发表的算法3. ICMP在终端和路由之间交流网络层的信息报告错误情况帮助诊断问题2、ICMP工作于网络层之上3、ICMP服务模型特性表现报告消息独立的报告错误的消息不可靠简单的数据报服务——不会重发ICMP消息的组原创 2020-10-27 20:33:16 · 348 阅读 · 0 评论 -
UDP服务模型
UDP由不需要使用TCP传输保证服务的应用程序使用,因为应用程序可能有自己私有的重传方法,或只是单纯的不需要可靠传输。UDP做的只是获取应用程序数据并创建UDP datagram,然后将其交付给网络层。1、UDP Datagram格式校验和甚至覆盖了IP头。2、UDP服务模型特性表现无连接的数据报服务不建立连接。数据包可能以任意的顺序显示。数据包独立不可靠传输1. 无确认消息2. 没有检查丢失或错序的机制3. 无流量控制3、总结UDP在应用程序之间提供原创 2020-10-27 19:41:10 · 392 阅读 · 0 评论 -
TCP服务模型
1、三次握手A向B发送同步消息,请求建立A到B的连接,并在消息中附带字节流的开始编号。B收到消息后,发送同步和确认消息,因为B需要建立一个B到A到连接,在该同步消息中同样附带字节流到开始编号。A收到后,返回确认消息。2、关闭连接A向B发送完成消息(Fin)表示希望关闭A到B的连接,B返回可能需要的数据并返回确认消息,此时A到B的连接关闭,但B可能还有数据需要发送给A,所以B到A的连接暂时还保留着。一段时间后,B向A发送完成消息。A收到后返回确认消息给B,B收到后关闭B到A的连接。3、TCP服务模原创 2020-10-27 17:36:12 · 506 阅读 · 0 评论 -
TCP header
标准的TCP header长度为20字节,为上图中的前五行,每行有4个字节。source port & destination port:源端口号和目的端口号,如80sequence number:代表了该packet的数据区中第一个字节在传输中的序列号acknowledgment number:ACK消息填写它,表示对刚接收的packet的确认,它的值为已接收packet的数据区字节序列的最后一个字节的序列号+1,也等于已接收的packet的sequence number + 它的数据区.原创 2020-09-17 22:10:38 · 2073 阅读 · 3 评论