JavaWeb——网络的基本概念

这篇具有很好参考价值的文章主要介绍了JavaWeb——网络的基本概念。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、IP地址

1、定义

2、格式

(1)、A类地址

(2)、B类地址

(3)、C类地址

(4)、特殊地址

二、端口号

三、协议

四、协议分层

1、定义

2、分类 

(1)、OSI七层网络模型

(2)、TCP/IP五层网络模型(当下广泛使用的网络模型)

五、封装和分用

1、封装

(1)、应用层封装数据

(2)、传输层处理应用层的数据

(3)、网络层处理传输层的数据

(4)、数据链路层处理网络层的数据

(5)、物理层处理数据链路层的数据

2、分用

(1)、物理层收到二进制数据

(2)、数据链路层接收物理层数据

(3)、网络层接收数据链路层数据

(4)、传输层接收网络层数据

(5)、应用层接收传输层数据

3、交换机和路由器

(1)、交换机

(2)、路由器

六、主机之间的网络通信流程

1、客户端

(1)、定义

(2)、核心工作

2、服务器

(1)、定义

(2)、核心工作

3、请求

4、响应

5、网络通信流程


一、IP地址

1、定义

IP地址是描述的一个主机在互联网的具体位置,互联网上的每一台主机和网络都被分配了一个IP地址。

IP地址是一个32位的二进制数,通常是4个8位二进制数即4字节。

IP地址通常表示成a.b.c.d的形式,其中每一位可以表示0-255的十进制整数。

每个IP地址又可分为两部分即网络号部分和主机号部分:网络号表示其所属的网络段编号,主机号则表示该网段中该主机的地址编号。根据网络规模大小还可以分成A,B,C,D,E五类。

2、格式

(1)、A类地址

在IP地址的四段编码中,第一段编码为网络编码,后三段编码为主机编码。用二进制表示A类IP地址由1字节的网络地址和3字节主机地址组成。A类IP地址中网络的标识长度为8位,主机标识的长度为24位。

A类网络地址数量较少,可以用于大型网络,地址范围从1.0.0.0到126.255.255.255,子网掩码为255.0.0.0。

(2)、B类地址

在IP地址的四段编码中,前两段编码为网络编码,后两段编码为主机编码。用二进制表示B类IP地址由2字节的网络地址和2字节主机地址组成。B类IP地址中网络的标识长度为16位,主机标识的长度为16位。

B类网络地址适用于中等规模的网络,地址范围从128.0.0.0到191.255.255.255,子网掩码为255.255.0.0。

(3)、C类地址

在IP地址的四段编码中,前三段编码为网络编码,最后一段编码为主机编码。用二进制表示C类IP地址就由3字节的网络地址和1字节主机地址组成。C类IP地址中网络的标识长度为24位,主机标识的长度为8位。

C类网络地址数量较多,适用于小规模的局域网络,地址范围从192.0.0.0到223.255.255.255其子网掩码为255.255.255.0。

(4)、特殊地址

  • 地址0.0.0.0对应当前主机
  • 地址127.0.0.1到127.255.255.255是用于回路测试

二、端口号

服务器有很多应用程序,每个应用程序都对应一个端口号。只有通过端口号客户端才能访问服务器。端口号常用来区分一个主机上的应用程序,我们可以通过端口号去寻找应用程序,并且每台电脑的端口号不能重复

两个不同的进程,不能绑定同一个端口号,但一个进程可以绑定多个端口号。

三、协议

协议是通信双方遵守的同一组约定,发送方约定了一个发送数据的格式,接收方也得理解这个格式,双方相互匹配才能够进行正确的通信。

例:

网络传输本质上都是通过网线等进行传输信息,传输的是一系列高低电平表示0和1的二进制位数,因此在传输前就需要让发送发和接收方约定好每组0和1的意思,这就是协议.

四、协议分层

1、定义

在网络通信中面对复杂的环境需要约定的协议也非常复杂,但是一个协议太复杂不利于管理和使用,因此可以将其拆分为多个协议。

因为协议是可以拆分的,所以存在有些小的协议作用或者定位是类似的。对此我们可以针对这些小协议进行分类,同时针对这些不同的类别进行分层。

分层相当于是约定了层级与层级之间的调用关系:要求上层协议调用下层协议,下层协议给上层协议提供支持,不能跨层调用。

优点:

  • 分层后层次间耦合程度低,上层协议不必了解下层的细节,下层也不必了解上层的细节
  • 方便后续对某一层的协议进行替换

例: 类似于公司的管理机制,上层管理下层,下层为上层服务,但不能跨级调用

JavaWeb——网络的基本概念

2、分类 

(1)、OSI七层网络模型

JavaWeb——网络的基本概念

注:仅仅存在于教科书

(2)、TCP/IP五层网络模型(当下广泛使用的网络模型)

JavaWeb——网络的基本概念

网络通信的下四层不关心传输的数据是做什么的,只有应用层才真正关心数据的用途。

应用层对应的是程序员写的应用程序,下四层则是操作系统内部已经封装好的,因此我们写代码进行网络编程主要工作还是围绕应用层展开的。

五、封装和分用

  • 封装:发送方发送数据,要把数据从上往下,依次交给对应的层次的协议进行封装
  • 分用:接收方收到数据,要把数据从下往上,依次交给对应的层次的协议进行解析

例:A向B发送QQ信息

1、封装

(1)、应用层封装数据

拿到用户数据进行封装,封装成应用层数据包(本质上就是字符串拼接)

JavaWeb——网络的基本概念

(2)、传输层处理应用层的数据

传输层拿到上述数据后,应用层要调用传输层提供的API来处理这个数据。传输层有很多协议,最典型的是TCP和UDP。此处以UDP为例,UDP针对上述数据包再进行封装。

一个典型的数据报都是通过报头+载荷的方式构成的,本质上还是字符串拼接。

JavaWeb——网络的基本概念

将整个应用层数据包作为UDP数据包的数据部分(载荷),UDP协议给应用层数据报加上一个UDP报头,就是为了再贴一层标签,从而在标签上填写必要的属性。

(3)、网络层处理传输层的数据

UDP数据报已经有了,接下来就要把这个数据报交给网络层的协议。网络层最常见的协议就是IP协议。上述的UDP数据报道道网络层还需要进一步的封装,添加上IP协议报头。

源IP和目的IP就描述了这次传输中,最初的起点和最终的终点。

JavaWeb——网络的基本概念

加上一个IP协议的报头,整个UDP数据报作为IP的载荷

(4)、数据链路层处理网络层的数据

数据链路层最典型的协议叫做以太网,是最常见的网络,平时使用网线上网就是用以太网。

JavaWeb——网络的基本概念

mac地址也叫做物理地址,是描述一个主机在网络上的位置。

它的功能和IP地址很相似但是当下把这两个地址分别作用于不同的用途:

  • IP用来进行网络层的路径规划
  • mac用来描述数据链路层中两个即将进行传输的相邻节点。

mac是和网卡绑定的,理论上每个设备都会有一个自己的唯一的mac地址,但是IP则不是。

(5)、物理层处理数据链路层的数据

数据链路层就要把上述以太网数据帧交给物理层,物理层要把上述的二进制数据转换成光信号、电信号等进行传输。

2、分用

接受数据过程和上述封装过程相反,发送方从上到下依次封装新增报头,接受方从下到上依次分用去掉报头。

(1)、物理层收到二进制数据

物理层收到二进制数据后就会对其进行解析,还原成二进制序列。

(2)、数据链路层接收物理层数据

此时把上述二进制序列数据当作一个以太网数据帧,此处从以太网收到的数据就是要交给以太网协议来处理了。

把帧头和帧尾去掉,取出中间的载荷,再往上交给网络层。

以太网数据帧帧头中有一个消息类型,根据这个类型就可以知道网络层是IP协议。

(3)、网络层接收数据链路层数据

此时就由网络层的IP协议进行解析数据报,也是去掉IP报头。最重要的还是取出载荷,交给更上层的传输层IP数据报。

报头也有一个字段,标识当前传输层用的是哪个协议。

(4)、传输层接收网络层数据

此处是由UDP来解析处理,去掉报头取出载荷,把数据交给应用层。借助端口号来区分具体的应用程序,每个要接受网络数据的程序都需要关联上一个端口号。

(5)、应用层接收传输层数据

由QQ这个程序进行解析应用层数据报,取出下列字段放到程序界面中。

3、交换机和路由器

真实的网络环境中,数据的传输中间可能要经历很多节点进行转发。

JavaWeb——网络的基本概念

(1)、交换机

交换机会进行分用,从物理层分用到数据链路层,直到当前这个数据报的目的mac不对就行了。

交换机针对这个数据重新封装,从数据链路层封装到物理层,把数据继续转发。

中间的交换机只需要封装分用到数据链路层(只需要重新封装源mac和目的mac)

(2)、路由器

路由器收到的数据,会从物理层分用到网络层。根据当前得到的目的IP进行下一阶段的寻路操作。IP协议是在一边传输的过程,一边规划路径。

中间的路由器则需要封装分用到网络层(需要重新封装mac地址,同时还需要根据目的IP进行下一阶段的路径规划)

六、主机之间的网络通信流程

1、客户端

(1)、定义

客户端是指与服务器相对应的、为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,客户端一般安装在普通的客户机上,需要与服务端互相配合运行。

客户端为用户提供服务。

(2)、核心工作

  • 读取用户输入
  • 构造请求,并发送
  • 客户端读取服务器的响应
  • 客户端把响应转成字符串,并显示出来

2、服务器

(1)、定义

服务器端是向网络上的其他机器提供某些服务的计算机系统。接收并储存客户端发送过来的数据或请求,并且对请求进行响应,发送数据给客户端。

(2)、核心工作

  • 读取请求并解析
  • 根据请求计算响应
  • 把响应返回客户端

3、请求

请求是指向服务器发送要求来获取数据进行相关操作。

4、响应

响应是指向服务器申请相关操作,服务器在进行处理之后返回相关内容或者返回请求失败的一个回应。

5、网络通信流程

JavaWeb——网络的基本概念文章来源地址https://www.toymoban.com/news/detail-422500.html

到了这里,关于JavaWeb——网络的基本概念的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux网络编程---IP 地址格式转换函数

      我们更容易阅读的IP地址是以点分十进制表示的,例如:192.168.5.10 ,这是一种字符串的形式,但是计算器所需要的IP地址是以二进制进行表示,这便需要我们在点分十进制字符串和二进制地址之间进行转换。   点分十进制字符串和二进制地址之间的转换函数主要有:

    2024年01月18日
    浏览(49)
  • 从定义到实际应用,详解项目管理的基本概念与核心内容

    项目管理是项目的管理者,在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效地管理。项目管理的内容包括项目范围管理,是为了实现项目的目标,对项目的工作内容进行控制的管理过程。它包括范围的界定,范围的规划,范围的调整等。

    2024年02月08日
    浏览(61)
  • 视频格式网络地址转换视频到本地,获取封面、时长,其他格式转换成mp4

    使用ffmpeg软件转换网络视频,先从官网下载对应操作系统环境的包 注意:网络地址需要是视频格式结尾,例如.mp4,.flv 等 官网地址:Download FFmpeg      window包: linux包: 如果下载缓慢,下载迅雷安装使用下载。 解压缩后对应截图: window: linux: 在maven项目的pom.xml引入依赖包

    2024年02月03日
    浏览(53)
  • Java网络编程(一)基本网络概念

            网络(network) 是几乎可以实时相互发送和接收数据的计算机和其他设备的集合。网络通常用线缆连接,数据位转换为电磁波,通过线缆移动。不过,无线网络会通过无线电波传输数据,许多长距离的传输现在会用通过玻璃纤维发送可见光的光纤电缆来完成。传输数

    2024年02月16日
    浏览(45)
  • 网络中的基本概念

    ⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:JavaEE 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 前言 早起的计算机之间是相互独立的,随着时代的发展,计算机实现了互相通信,共享软件和数据,即以多个计算机协同⼯作来完成业务,

    2024年01月18日
    浏览(39)
  • 《网络协议》01. 基本概念

    title: 《网络协议》01. 基本概念 date: 2022-08-30 09:50:52 updated: 2023-11-05 15:28:52 categories: 学习记录:网络协议 excerpt: 互联网、网络互连模型(OSI,TCP/IP)、计算机通信基础、MAC 地址、ARP ICMP、IP 子网掩码、CIDR 表示方法、子网、超网、路由、网络 互联网 因特网、ISP、网络分类、上

    2024年02月05日
    浏览(41)
  • [计算机网络]基本概念

    目录 1.ip地址和端口号 1.1IP地址 1.2端口号 2.认识协议 2.1概念: 2.2知名协议的默认端口 3.五元组 4.协议分层 4.1分层的作用 4.2OSI七层模型 4.3TCP/IP五层(四层)模型 ​编辑4.4网络设备对应的分层: ​编辑以下为跨网段的主机的文件传输:数据从一台计算机到另一台计算机传输过

    2024年01月24日
    浏览(46)
  • 网络传输基本概念

    1、交换机:交换机工作在数据链路层,根据MAC寻址,交换机根据目的MAC地址查询MAC表,转发到目的主机端口。 2、路由器:路由器工作在网络层,根据IP寻址,使用路由表查询下一跳IP地址,如果是直连路由则把数据包发送到对应接口,如果不是直连路由,解析下一跳的MAC地址

    2024年02月16日
    浏览(37)
  • 网络基本概念

    目录 一、IP地址 1. 概念 2. 格式 3. 特殊IP 二、端口号 1.概念 2. 格式 3.注意事项 三、 协议 1. 概念 2. 作用 四、协议分层 1. 网络设备所在分层 五、封装与分用 六、客户端和服务器 1. 客户端与服务器通信的过程  IP地址主要用于标识网络主机.其他网络设备(如路由器)的网络地

    2024年02月13日
    浏览(38)
  • 计算机网络 - 网络中的基本概念

    本篇介绍网络的一些基本概念,认识IP地址,端口号,协议;了解常用的网络协议模型,知道数据如何封装与分用的;为以后学习计算机网络其它知识做铺垫,如有错误,请在评论区指正,让我们一起交流,共同进步! 本文开始 局域网:把一些设备通过交换机 / 路由器 连接

    2023年04月15日
    浏览(86)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包