资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

TCP/IP与socket学习

Java 更新时间: 发布时间: 计算机考试归档 最新发布

TCP/IP与socket学习

TCP/IP与socket学习
  • 网络分层
  • TCP
  • 三次握手和四次挥手
  • 一次完整的网络请求
  • Socket

网络分层


TCP


1、面向连接,不是真正意义上的物理连接,而是彼此之间通过报文互相响应之后进行通讯的连接。
2、可靠性,超时重传和报文应答保证他们的可靠性。
3、往返时延指的是当次传输两端加起来的时间,这个时间是一直在变化的,超过这个时间即重传。
4、数据排序:我们的报文很大,分成很多分,对其进行排序。
5、如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。
6、全双工指的是两边都可以发送和接收。

三次握手和四次挥手


三次握手 建立一个TCP连接时,需要客户端和服务 面试点 端总共发送3个包以确认连接的建立。
第一次握手 客户端请求建立连接。
第二次握手 服务端应答客户端,并请求建立连接。
第三次握手 客户端针对服务端请求确认应答。
为什么需要3次握手? TCP是面对连接的,所以需要双方都确认连接的建立。

四次挥手
定义 断开一个TCP连接时,需要客户端和服务端总共发送4个包以 确认连接的断开。
第一次挥手:客户端发送关闭请求
第二次挥手:服务端响应客户端关闭请求
第三次挥手:服务端发送关闭请求
第四次挥手:客户端发送关闭确认请求
为什么需要四次挥手 TCP是双全工(即客户端和服务器端可以相互发送和接收请求),所以需要双方都确认关闭连接。
为什么需要TIME-WAIT状态?
时间是1-4分钟,如果往服务端发送的确认报文超时是要重传的,而且当前没有关闭的时候端口不会被回收,如果服务器这个时候还有数据过来不会被其他可能新创建的同样端口的程序接收过去。

一次完整的网络请求

以打开百度网页为例:
1、首先进行DNS域名解析(本地浏览器缓存、操作系统缓存或者DNS服务器)
2、三次握手建立 TCP 连接
3、客户端发起HTTP请求
4、服务器响应HTTP请求
5、客户端解析html代码,并请求html代码中的资源
6、客户端渲染展示内容
7、关闭 TCP 连接

Socket

socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口,其实就是一个门面模式。
TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点,这种端点就叫做套接字(socket)。

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/322443.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【TCP/IP与socket学习】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2