ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Web世界中的网络协议是如何工作的

2022-06-13 00:32:54  阅读:149  来源: 互联网

标签:Web UDP HTTP 协议 网络协议 TCP 如何 传输 数据包


互联网,实际上是一套理论和协议组成的体系架构。
协议,是一套众所周知的规则和标准。
数据是通过数据包来传输的,传输大文件,会将文件分割成一个个小数据包。
数据包要在网络上进行传输,就要符合IP协议标准(网际协议, Internet Protocol)

IP协议:传输数据包到计算机IP地址

IP协议就是网际协议。
计算机的地址就称为IP地址,请求任何一个网站,实际上是你的计算机向另外一台计算机发送请求。
如果要想把一个数据包从主机A发送给主机B,那么在传输之前,数据包上会被附加上主机B的IP地址信息,这样在传输过程中才能正确寻址。额外地,数据包上还会附加上主机A本身的IP地址,有了这些信息主机B才可以回复信息给主机A。

通过IP协议可以把数据包传输给对方电脑,但无法判断给对方电脑上的那个应用程序。
要做到这件事情需要通过UDP协议

UDP协议 传输数据包到计算机具体的应用程序

UDP协议,即 User Datagram Protocol
UDP一个很重要的信息是端口号,每个想访问网络的应用程序都会绑定一个端口号,通过端口号就可以把数据包发给计算机具体的目标应用程序了

在使用UDP发送数据时,可能会出错,UDP能识别这种错误,但是UDP并没有提供重传机制,并且UDP在发送之后无法判断是否到达目的地
因此,UDP的缺点是无法保证数据的可靠性,但是优点是传输速度非常快,因此在在线视频、互动游戏这方面有应用

而TCP协议保证了数据可靠性,负责将数据完整地传输到应用程序

TCP协议 将数据包完整地传输到应用程序

对于浏览器请求,或者邮件这些对数据可靠性要求较高的应用来说,使用UDP会存在问题:

  1. 数据包在传输过程中容易丢失
  2. 对于一个大文件,数据包在不同的时间点到达应用,顺序混乱,UDP无法组装、还原成完整文件

对于这种场景,需要使用TCP协议(Transmission Control Protocol 传输控制协议)

  • 针对数据包丢失这一问题, TCP提供重传机制
  • TCP引入排序机制,用序列号标记数据包,用于将乱序的数据包组装成完整的文件

如何重传?
接收方需要对每个操作进行确认,即接收方在接收到数据包之后,要发送确认包给发送端,如果发送端规定时间没有收到确认包,则触发重传机制

TCP为了保证数据传输的可靠性,牺牲了数据包的传输速度 —————— 三次握手,数据包校验机制,将数据包的数量提高了一倍

HTTP协议

HTTP协议和TCP协议都是TCP/IP协议簇的子集。
HTTP协议属于应用层,TCP协议属于传输层,HTTP协议位于TCP协议的上层。

请求方要发送的数据包,在应用层加上HTTP头以后会交给传输层的TCP协议处理,应答方接收到的数据包,在传输层拆掉TCP头以后交给应用层的HTTP协议处理。建立 TCP 连接后会顺序收发数据,请求方和应答方都必须依据 HTTP 规范构建和解析HTTP报文

标签:Web,UDP,HTTP,协议,网络协议,TCP,如何,传输,数据包
来源: https://www.cnblogs.com/ltfxy/p/16369375.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有