企业做网站需要租服务器吗游戏创作平台

当前位置: 首页 > news >正文

企业做网站需要租服务器吗,游戏创作平台,百度指数首页,网站流量监控文章目录 一、运输层1.1、端口号1.2、发送方的复用1.3、接收方的分用 二、一次HTTP请求的交互流程三、TCP、IP协议的对比3.1、单播#xff0c;多播#xff0c;广播的支持3.2、应用层报文的处理3.3、可靠传输的支持3.4、报文首部的区别 一、运输层 运输层位于网际层之上#… 文章目录 一、运输层1.1、端口号1.2、发送方的复用1.3、接收方的分用 二、一次HTTP请求的交互流程三、TCP、IP协议的对比3.1、单播多播广播的支持3.2、应用层报文的处理3.3、可靠传输的支持3.4、报文首部的区别 一、运输层 运输层位于网际层之上应用层之下。基于四层网络模型相比于网际层主机到主机之间的数据传输运输层的主要作用是为运行在不同主机上的应用进程之间提供可靠或不可靠的数据传输服务。逻辑通信   它的核心功能包括 进程之间的通信复用与分用差错检测与纠正通过校验和机制检测数据在传输过程中是否被损坏。流量控制、拥塞控制、可靠传输只限于TCP TCP和UDP是运输层的两个重要协议。 1.1、端口号 运行在计算机上的进程是使用PID进行标识的在windows下可以通过tasklist命令去查询进程对应的PID。   而不同的操作系统对于PID的格式是不同的 比较项WindowsLinux数据类型DWORD32位无符号整型pid_t通常是32位有符号整型显示格式十进制整数十进制整数起始值通常从 4 起系统保留 0~3通常从 1 起PID 1 是 init 或 systemd最大值理论上最大值为 2^32 - 1 4294967295但通常远小于此/proc/sys/kernel/pid_max 控制默认 32768最大支持到约 4,194,304查看方式tasklist、任务管理器、Get-Process 等ps, top, htop, cat /proc/pid, pidof 等PID 是否连续不连续Windows 的 PID 分配较分散通常近似递增但在高负载或多线程下也可能跳跃特殊 PID无 PID1 等传统意义的“init进程”PID 1 是 init 或 systemd所有其他进程的祖先进程支持 PID 回收是是 端口号则是屏蔽了不同操作系统之间的PID的区别以此作为TCP/IP体系的应用进程的标识。端口号的长度为16bit取值范围为0~65535端口是运输层的概念起到连接应用层和传输层的作用。相比较于IPIP标识的是主机而端口标识的是主机中的应用进程。   运输层的端口号又可以进行细分 本文图片来源深入浅出计算机网络 微课视频 1.2、发送方的复用 复用和分用也是运输层的两个重要概念指的是不同的应用层的进程都可以使用同一个传输层协议传送数据以及接收方的传输层在去除报文首部后可以交付到正确的应用层进程。复用和分用都可以分为UDPTCPIP三种类型应用层首先根据端口号将应用报文发送至应用层。 应用层进程的应用报文在运输层被UDP协议封装称为UDP复用。应用层进程的应用报文在运输层被TCP协议封装称为TCP复用。 UDP协议封装成的是用户数据报而TCP协议封装成的是报文段: 在网际层使用IP协议统一封装成IP数据报称为IP复用IP数据报首部协议的值用于表示封装的是何种协议数据单元 6TCP报文段17UDP数据报 1.3、接收方的分用 接收方会对于IP数据报进行分用 如果6 - TCP报文段 交给运输层由TCP协议进行处理。如果17 - TCP报文段 交给运输层由UDP协议进行处理。 在运输层对于TCP和UDP进行各自的分用。根据端口号向上交付给应用层的相应进程。
二、一次HTTP请求的交互流程 假设我当前用户PC的IP地址是192.168.0.1web服务器的域名是www.porttest.comDNS服务器存储了域名和服务器IP的对应关系。 DNS服务器是互联网中的一个分布式数据库系统用于将“人类可读的域名”如 www.baidu.com转换为“计算机能识别的 IP 地址”如 39.156.66.18DNS服务器的分类 类型作用举例本地 DNS 服务器递归服务器通常由你的网络提供商或操作系统配置处理所有域名解析请求114.114.114.114阿里、8.8.8.8Google根 DNS 服务器全球仅有13组指向顶级域服务器无需你手动配置系统默认递归中用顶级域 DNS 服务器TLD负责 .com、.cn、.net 等域名后缀的解析指引也由系统递归调用权威 DNS 服务器真正存储某个域名的 IP 映射关系如 ns1.baidu.com 是 baidu.com 的权威 DNS 你在浏览器输入https://www.baidu.com    操作系统的步骤如下 查询本地缓存有没有 www.baidu.com 的 IP如果没有问本地 DNS 服务器如 114.114.114.114本地 DNS 会向根服务器询问 .com 再找 .com 的权威服务器要 baidu.com最终找到 www.baidu.com 的权威服务器返回它的 IP系统拿到 IP开始真正访问网页服务器。 用户输入的是域名不知道域名对应的真实ip地址是多少所以需要经过下面的一系列处理
用户在浏览器上输入域名用户pc中的DNS客户进程发送一个DNS查询请求报文。查询域名对应的IP地址具体是使用UDP协议将请求封装成UDP用户数据报包含源端口和目标端口 源端口的值由系统在短暂端口号中随机选取未被占用的。目标端口的值设置成53DNS服务器进程的熟知端口号 用户进程将UDP数据报封装成IP数据报发送给DNS服务器DNS服务器收到后进行解析。查询地址并且发给用户PC响应报文。 用户PC解析响应报文得到域名对应的IP然后系统将短暂端口号进行回收。 用户PC向web服务器发出请求报文HTTP请求报文需要使用TCP协议。web服务器的HTTP服务进程解析HTTP请求报文的内容按其要求查找首页内容返回给用户PC发送HTTP响应报文需要用到运输层的TCP协议。 由用户PC中的HTTP客户进程解析http响应报文的内容并在浏览器上展示。最后回收短暂端口号。 为何查询DNS服务器使用的是UDP协议 DNS 是一个查询-响应的过程通常涉及的是短小的数据交换并且查询本身是非常频繁且大量的。由于 UDP 协议不进行连接建立、状态维护等响应速度很快这对于 DNS 查询这样的高频、低延迟应用非常重要。即使某次查询丢失客户端可以在短时间内重新发送查询请求而不需要像 TCP 那样进行复杂的重传机制。 三、TCP、IP协议的对比 首先从整体上看UDP是用户数据报协议,TCP是传输控制协议UDP是无连接的在传送数据之前无需创建连接所以可以随时收发数据。TCP需要通过三报文握手建立连接四报文挥手释放连接。
3.1、单播多播广播的支持 UDP协议支持单播多播和广播因为它是无连接的UDP可以向局域网中的任何其他机器发送单播广播多播。TCP仅支持一对一的单播因为一条 TCP 连接必须绑定在一个源 IP:端口 和 一个目标 IP:端口 上严格的一对一结构如果是一对多则会存在发出一个 TCP 包 → 有多个机器同时返回 ACK的情况这样会面临很多问题 如果某个主机挂掉是中断连接还是继续维持如果一个收到、一个没收到是重传还是终止序列号怎么维护N 台机器的接收窗口都一样吗 3.2、应用层报文的处理 UDP应用层直接将报文发送给运输层的UDP而UDP要增加一个报文首部接收方在接收到后会去掉报文首部交付给应用层。保留报文的边界UDP是面向报文的协议不会存在半包粘包的问题。TCP将应用层交付的报文看作是字节流进行处理TCP仅仅将它们编号并且存入当前的发送缓存中并且构建TCP报文段进行发送。接收方会从接收到的TCP报文段中取出数据载荷并且存储在接收缓存中并且将字节交付给应用层会存在半包粘包问题。 3.3、可靠传输的支持 首先作为TCPUDP下层的网际层IP协议提供的是无连接不可靠的传输。 UDPUDP同样提供给应用层无连接不可靠的传输这里的不可靠体现在UDP检测出错误数据后就直接丢弃。同时如果发送方的消息没有路由到接收方UDP也不会进行处理。TCP向上层提供了可靠面向连接的传输解决误码丢失乱序和重复的问题。 3.4、报文首部的区别 UDP的首部信息主要是标记端口仅仅占用8个字节。TCP的首部需要保证可靠传输流量控制拥塞控制比UDP复杂的多最少20个字节最大60个字节。