您现在的位置是:首页 >技术杂谈 >网络应用基础 ——(2023新星计划文章二)网站首页技术杂谈

网络应用基础 ——(2023新星计划文章二)

泰勒今天想展开 2023-07-25 00:00:03
简介网络应用基础 ——(2023新星计划文章二)

一,TCP报头解析

1.0报文与报文字段

1.0.1 报文

报文是计算机网络中交换信息的基本单位,是一种用于在网络中传递数据的结构化数据格式。在网络通信中,数据会被封装成报文的形式,通过网络传输到目标设备,然后在目标设备上进行解析和处理。

报文通常由报文头和报文体两部分组成。报文头包含了一些关于报文的控制信息,如报文类型、源地址、目标地址、协议版本等等。报文体则包含了具体的数据内容,如文本、图片、音频、视频等等。报文体的长度可以根据需要而变化,而报文头的长度通常是固定的。

不同的网络协议会定义不同的报文格式和规范,例如在 HTTP 协议中,报文通过请求报文和响应报文的形式进行交互,而在 TCP 协议中,报文则包括了一些用于保障数据可靠传输的控制信息,如序列号、确认号等等。

1.0.2报文字段

报文字段指的是计算机网络中通信协议中定义的报文格式中的各个部分或段落,每个字段都负责传递特定的信息。通常,一个报文由报文头报文体两部分组成,报文头包含各种控制信息,而报文体包含传输的数据。

在不同的协议中,报文字段的类型和含义可以有所不同,但通常包括以下几个方面:

(1)版本号/协议版本:指明报文所使用的协议的版本号。
(2)源地址/目标地址:指明报文发送方和接收方的 IP 地址。
(3)端口号:指明报文发送方和接收方的端口号,用于标识应用程序。
(4)序列号/确认号:用于实现 TCP 协议中的可靠传输,保证数据的顺序和完整性。
(5)标志位:用于表示 TCP 报文的状态,如 SYN、ACK、FIN 等。
(6)数据长度:指明报文体中传输的数据的长度。
(7)校验和:用于校验报文的完整性,防止数据在传输过程中被损坏或篡改。

1.1TCP报文头部详解

在这里插入图片描述在这里插入图片描述

    1. Source port:源端口号与Destination port目标端口号:
      在TCP(传输控制协议)协议中,源端口和目标端口字段用于标识通信会话的端点。
      (1)源端口是一个16位字段,用于标识本地主机上的发送应用程序或进程。它由发送主机选择,并由接收主机用于将响应数据包发送回正确的端口。
      (2)目标端口是一个16位字段,用于标识远程主机上的接收应用程序或进程。它由发送主机指定,并由接收主机用于将传入数据包定向到正确的应用程序或进程。
      (3)源端口和目标端口字段一起形成一个唯一的套接字(Socket),它标识两个主机之间特定的通信会话。源端口和目标端口的组合允许多个应用程序或进程在同一主机上与不同的端点建立多个通信会话。
    1. Sequence numberAcknowledge numbe
      在TCP协议中,序列号和确认号字段用于提供可靠的数据传输。发送方可以根据确认号确定接收方已经成功接收到哪些数据,从而可以重传丢失的数据。接收方可以使用序列号来将接收到的数据按正确的顺序进行组装,从而保证数据的完整性和正确性。
      (1)Sequence number:TCP链接中的每个报文都有序列号。序列号是一个32位的字段,用于标识TCP报文段中第一个字节的序列号。由于TCP报文段可能会分成多个IP数据包进行传输,序列号可以用于确定报文段中的字节在数据流中的顺序。
      (2)Acknowledge numbe:,用于对收到的报文的确认的确认号。确认号是一个32位的字段,用于指示期望接收的下一个字节的序列号。当接收方成功接收到一个TCP报文段时,它会发送一个确认报文段回到发送方,其中确认号字段被设置为已接收的最大序列号加1,表示下一个期望接收的字节的序列号。
    1. Window Size
      用于窗口TCP的流量控制,根据接收者能力进行调节,这个值表明当前接受端可接受的最大数据总数(字节),如果没有这个流量控制,传输方会尽最大能力传输数据,如果接收方一次不能接受完所有数据就会导致丢包,还需要重新传送。
    1. Checksum字段:
      在计算机网络中,Checksum(校验和)是一种用于检测数据传输中错误的技术。在TCP协议中,Checksum字段用于检测TCP报文段中的错误。
      (1)Checksum字段是一个16位的字段,用于存储计算出的校验和值。发送方在发送TCP报文段时,计算校验和并将其添加到Checksum字段中。接收方在接收到TCP报文段后,也会计算校验和并将其与Checksum字段中的值进行比较,以检测是否存在数据传输中的错误。
      (2)计算校验和的方法是将TCP报文段中的每个16位字(包括报文头和报文数据)两两相加,得到一个总和。如果总和大于16位,则将低16位与高16位相加,直到得到一个16位的结果。然后将这个16位结果取反,得到的值就是校验和。
      (3)通过Checksum字段,TCP协议可以检测到数据传输中的错误,例如数据丢失、损坏或被篡改等。如果接收方检测到Checksum值与计算得到的校验和值不同,则说明TCP报文段中存在错误,接收方会丢弃这个报文段并要求发送方重新发送数据。
      因此,Checksum字段是TCP协议实现可靠数据传输的重要组成部分之一。
    1. Urgent pointer
      Urgent pointer" 是 TCP (Transmission Control Protocol) 报文头中的一个字段,用于指示 TCP 报文中的数据应该比其他数据优先处理
      (1)当设置了 “urgent pointer” 字段时,TCP 报文接收方知道该报文包含的是需要立即处理的紧急数据。接收方可以使用 “urgent pointer” 字段中的值来确定 TCP 报文中紧急数据的最后一个字节的位置。
      (2)使用 “urgent pointer” 是可选的,通常只有在有特定需要指示某些数据应该优先处理的情况下才会使用它。使用 “urgent pointer” 的例子包括需要实时数据传输的应用程序,如在线游戏或视频流媒体

1.2滑动窗口

  • 概念:滑动窗口是TCP协议中用于流量控制和拥塞控制的机制之一,它允许发送方和接收方之间的通信进行自适应调整,以适应网络条件的变化。
  • 作用
    (1)在TCP协议中,发送方和接收方都维护一个滑动窗口用于控制数据的传输。发送方的滑动窗口表示可以发送的数据量,而接收方的滑动窗口表示可以接收的数据量。这个滑动窗口大小可以根据网络条件进行动态调整。
    (2)发送方根据接收方的滑动窗口大小来发送数据,确保不会发送超过接收方缓冲区大小的数据。接收方通过发送确认消息来告知发送方它的滑动窗口大小,从而通知发送方可以发送多少数据。
    (3)通过滑动窗口,TCP协议可以自适应地调整数据的传输速率,以适应网络的拥塞和性能变化。如果网络拥塞,接收方可以减小滑动窗口的大小,从而减少发送方的数据量,避免网络拥塞加剧。如果网络条件良好,滑动窗口可以增大,从而提高数据传输速率。

二, TCP三次握手

三,TCP四次握手

四,云计算介绍

在这里插入图片描述
互联网数据中心:(Internet Data Center)在这里插入图片描述
一:基础设施
在这里插入图片描述
(云服务器相当于虚拟硬件)
在这里插入图片描述
(IP地址:)
在这里插入图片描述
二:平台(企业可以直接使用安装配置好的操作系统和数据库)
在这里插入图片描述在这里插入图片描述在这里插入图片描述
三,软件服务
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。