http和tcp的区别和联系_udp协议和tcp协议的区别

http和tcp的区别和联系_udp协议和tcp协议的区别一、基本概念1、TCP连接手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。建立起一个TCP连接需要经过“三次握手”:第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、基本概念

1、TCP连接

      手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。

      建立起一个TCP连接需要经过“三次握手”:

      第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

      第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

      第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

      握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连 接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”(过程就不细写 了,就是服务器和客户端交互,最终确定断开)

2、HTTP连接

      HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用。

      HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。

      1)在HTTP 1.0中,客户端的每次请求都要求建立一次单独的连接,在处理完本次请求后,就自动释放连接。

      2)在HTTP 1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发送下一个请求。

      由于HTTP在每次请求结束后都会主动释放连接,因此HTTP连接是一种“短连接”,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求。通常的 做法是即时不需要获得任何数据,客户端也保持每隔一段固定的时间向服务器发送一次“保持连接”的请求,服务器在收到该请求后对客户端进行回复,表明知道客 户端“在线”。若服务器长时间无法收到客户端的请求,则认为客户端“下线”,若客户端长时间无法收到服务器的回复,则认为网络已经断开。

二 区别

1  TCP对应于传输层,HTTP对应于应用层,从本质上来说,二者没有可比性。

2  Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求。Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的。所以Http连接是一种短连接,是一种无状态的连接。
3  HTTP连接:http协议即超文本传送协议,是web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用。

HTTP最显著的特点时客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。

①:在HTTP1.0中,客户端的每次请求都要求建立一次单独的连接,在处理完本次请求后,就自动释放连接。

②:HTTP1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发下一个请求。
4  HTTP在每次请求结束后都会主动释放连接,所以为了保持客户端程序的在线状态,需要不断地向服务器发起连接请求。通常的做法时客户端每隔一段时间向服务器发送一次“保持连接”的请求,服务器在收到该请求后对客户端进行回复,表明知道客户端在线,若服务器长时间收不到客户端的请求,则认为下线,若客户端长时间不收到服务器的回复,则认为网络断开。

 5  TCP是底层协议,定义的是数据传输和连接方式的规范。

HTTP是应用层协议,定义的是传输数据的内容的规范。

HTTP协议中的数据是利用TCP协议传输的,所以支持HTTP就一定支持TCP。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/191219.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • HTML5新控件 – 日期和时间选择输入

    HTML5新控件 – 日期和时间选择输入转载自:https://blog.csdn.net/u014063717/article/details/50914466HTML5定义了几个与日期有关的新控件。支持日期控件的浏览器会提供一个方便的下拉式日历,供用户选择。注意:我测试了Chrome和Opera,火狐提供下拉式日历支持,其它浏览器可能仍是一个普通文本框。1,日期控件-date<inputtype="date"valu…

    2022年5月24日
    265
  • 分布式中几种服务注册与发现组件的原理与比较

    分布式中几种服务注册与发现组件的原理与比较分布式中几种服务注册与发现组件的原理与比较

    2022年4月20日
    45
  • 个人微信api接口调用代码[通俗易懂]

    个人微信api接口调用代码[通俗易懂]个人微信api接口1、微信好友收发消息/***给微信好友发消息*@authorwechatno:tangjinjinwx*@bloghttp://www.wlkankan.cn*/@AsyncpublicvoidhandleMsg(ChannelHandlerContextctx,TransportMessagevo,StringcontentJsonStr){try{…

    2022年10月2日
    3
  • 文件删除不掉:0X80070570解决办法

    文件删除不掉:0X80070570解决办法nbsp nbsp nbsp nbsp nbsp 今天在 linux 下拷东西 因为有急事所以强制拔掉了硬盘 结果就出现文件夹删不掉的情况 采用 Ultral 试试的时候获得了错误码 0X 这样就好办了 搜索了几下就得到了解决办法 右键硬盘选择工具检查磁盘 然后再进入硬盘删除该文件夹 成功解决 其实很简单

    2025年7月8日
    1
  • Ubuntu18.04安装edge

    Ubuntu18.04安装edgeUbuntu18.04安装edge为了同步数据和书签,选择长期使用edge安装方法更新程序包索引并安装依赖项:sudoaptupdatesudoaptinstallsoftware-properties-commonapt-transport-httpswget使用以下命令导入MicrosoftGPG密钥wget:wget-qhttps://packages.microsoft.com/keys/microsoft.asc-O-|sudoapt-keyadd-

    2022年7月21日
    26
  • win10 常用命令「建议收藏」

    win10 常用命令「建议收藏」以下为windows10命令:1.calc:启动计算器2.appwiz.cpl:程序和功能3.certmgr.msc:证书管理实用程序4.charmap:启动字符映射表5.chkdsk.exe:Chkdsk磁盘检查(管理员身份运行命令提示符)6.cleanmgr:打开磁盘清理工具7.cliconfg:SQLSERVER客户端网络实用工具8.cmstp:连接管理器配置文件安装程…

    2022年5月30日
    160

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号