java--网络编程

      最后更新:2022-02-28 06:31:47 手机定位技术交流文章

      文章目录

      • 网络编程
        • 网络基础(面试常见)
          • OSI七层网络模型
          • TCP四层网络模型
          • 三次握手四次挥手
        • 通讯协议
          • 会话层协议
        • Socket编程
          • TCP
          • UDP

      网络编程

      网络基础(面试常见)

      OSI七层网络模型

      • 应用层:OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。(APP中用户看到的数据)
      • 表示层:表示层提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据格式转换成通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。(转化,解压,加密等)
      • 会话层:会话层就是负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成.(服务间的对接)
      • 传输层:传输层建立了主机端到端的链接,传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。TCP UDP就是在这一层
      • 网络层:本层通过IP寻址来建立两个节点之间的连接,为源端的运输层送来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层。就是通常说的IP层。这一层就是我们经常说的IP协议层。IP协议是Internet的基础。
      • 数据链路层:将比特组合成字节,再将字节组合成帧,使用链路层地址 (以太网使用MAC地址)来访问介质,并进行差错检测。
      • 物理层:实际最终信号的传输是通过物理层实现的。通过物理介质传输比特流。规定了电平、速度和电缆针脚。常用设备有(各种物理设备)集线器、中继器、调制解调器、网线、双绞线、同轴电缆。这些都是物理层的传输介质。

      TCP四层网络模型

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

      三次握手四次挥手

      三次握手:
      TCP位于传输层,作用是提供可靠的字节流服务,为了准确无误地将数据送达目的地,TCP协议采纳三次握手策略。

      • 发送端首先发送一个带有SYN(synchronize)标志地数据包给接收方。
      • 接收方接收后,回传一个带有SYN/ACK标志的数据包传递确认信息,表示我收到了。
      • 最后,发送方再回传一个带有ACK标志的数据包,代表我知道了,表示’握手‘结束。
        在这里插入图片描述

      四次挥手:

      • 第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
      • 第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
      • 第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
      • 第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手
        在这里插入图片描述

      通讯协议

      网络层协议
      传输层协议:TCP、UDP

      会话层协议

      HTTP—超文本传输协议:

      • HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。
      • HTTP默认端口号为80,但是你也可以改为8080或者其他端口。
      • HTTP的缺点:HTTP虽然使用极为广泛, 但是却存在不小的安全缺陷, 主要是其数据的明文传送和消息完整性检测的缺乏, 而这两点恰好是网络支付, 网络交易等新兴应用中安全方面最需要关注的。
      • HTTP三点注意事项:1.HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。2.HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。3.HTTP是无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

      (面试常见)HTTPS超文本传输安全协议:是以安全为目标的HTTP通道。在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。
      FTP:文件传输协议是用在网络上进行文件传输的一套标准协议。
      SMTP:SMTP是一种提供可靠且有效的电子邮件传输的协议。SMTP是建立在FTP文件传输服务上的一种邮件服务,主要用于系统之间的邮件信息传递。并提供有关来信的通知。

      Socket编程

      TCP

      TCP即传输控制协议。是一种面向连接的、可靠的、基于字节流的传输层通信协议。
      服务器:

      客户端:

      UDP

      服务器:

      客户端:

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/19172.html

          热门文章

          文章分类