<JavaEE> 网络编程 -- 网络通信基础(协议和协议分层、数据封装和分用)

目录

一、IP地址

1)IP地址的概念

2)IP地址的格式

二、端口号

1)端口号的概念

2)端口号的格式

3)什么是知名端口号?

三、协议

1)协议的概念

2)协议的作用

3)TCP/IP协议中的五元组概念

四、协议分层

1)什么是协议分层?

2)协议分层的作用

3)协议分层的两种模型

[<1> OSI七层模型](#<1> OSI七层模型)

[<2> TCP/IP五层模型](#<2> TCP/IP五层模型)

4)协议分层应用的经典网络设备

五、封装和分用

1)封装和分用的概念


一、IP地址

1)IP地址的概念

|---------------------------------------------|
| IP地址描述了一个网络设备的网络地址,主要用于对设备的网络地址进行标识和定位。 |

2)IP地址的格式

|-----------------------------------------------------------------------------------|
| IP地址是一个32位的二进制数,每8位二进制数(4个字节)后,用一个 ' . ' 号分隔。这种表示方式被称为"点分十进制"。(如:192.168.1.1) |


二、端口号

1)端口号的概念

|-----------------------------------------------|
| 端口号区分了一个主机上的不同应用程序,用于对主机中发送、接收数据的进程标识和定位。 |
| 不同的程序可以关联多个端口号,但是一个端口号只能被一个程序关联。 |

2)端口号的格式

|-----------------------------------|
| 端口号是一个2字节的整数,表示范围在0~65535之间。 |

3)什么是知名端口号?

|----------------------------------------------------------------------------------|
| 在0~65535范围中,0端口通常不使用,1~1023端口为系统预留端口,这些端口被分配给一些比较常见的服务器程序使用。一般在编程使用时,不应使用这些端口。 |


三、协议

1)协议的概念

|----------------------------------------------------------------|
| 网络通信有数据发送方和数据接收方,接收方如何识别发送方发送的数据,这就需要通信的双方有一个约定,这个约定就是协议。 |
| 协议即网络协议,是指网络通信过程的相关设备都必须共同遵守的一系列规则 。这里的规则的具体体现,就是数据格式。 |

2)协议的作用

|--------------------------------------------------------|
| 计算机之间的传输媒介是光信号和电信号。通过"频率"和"强弱"来表示0和1。 |
| 协议是一个规则,规定了通信双方如何解读这些信号,只有遵守这个规则,不同设备之间才能正确解读对方的发送的数据。 |

3)TCP/IP协议中的五元组概念

|----------------|----------------------|
| TCP/IP协议是网络通信中最基本的协议。 ||
| 在TCP/IP协议中,用五元组的概念来标识一个网络通信,五元组是一次通信过程中必不可少的信息。 ||
| 五元组包括了以下内容: ||
| <1>源IP | 标识源主机 |
| <2>源端口号 | 标识源主机中该次通信发送数据的进程 |
| <3>目的IP | 标识目的主机 |
| <4>目的端口号 | 标识目的主机中该次通信接收数据的进程 |
| <5>协议号 | 标识发送进程和接收进程双方约定的数据格式 |

四、协议分层

1)什么是协议分层?

|----------------------------------------------------------------------------------------|
| 网络通信十分复杂,有许多问题需要通过协议进行解决。如果将这些协议全部杂糅在一起,则会十分混乱。因此,就将这些协议拆分分层,使得每个协议都在自己的领域,专注于处理自己的事务。 |

2)协议分层的作用

|-------------------------------------------------------------------------------|
| 分层的好处是使用上层协议时,不必关心下层,使用下层协议时,不用关心上层,每一层协议专注于处理自己的事务即可,同时每一层协议都可以根据需要灵活替换。 |
| 这类似于对上下层协议进行了封装,按照协议的定位和作用,进行分类,并且约定了不同层次之间的"调用关系"。 |

3)协议分层的两种模型

<1> OSI七层模型

|------------------------------------------------------------------------------|
| OSI:即Open System Interconnection(开放系统互连)。是一种框架性的设计方法,最主要的功能是帮助不同类型的主机实现数据传输。 |
| OSI七层模型复杂而不实用,没有实际的实现,只存在于教科书中。 |

++图示演示模型分层:++

<2> TCP/IP五层模型

|---------------|------------------------------------------|
| TCP/IP是一组协议的代名词,它还包括了许多其他的协议,组成了TCP/IP协议簇。 ||
| TCP/IP通讯协议采用了五层层级结构,每一层都呼叫它的下一层协议提供的网络来完成自己的需求。 ||
| 包括以下五层: ||
| 1> 应用层 | **负责应用程序间的沟通。**规范应用程序如何使用数据。 |
| 2> 传输层 | **负责通信两端的数据传输。**关注的是端与端。 |
| 3> 网络层 | **负责地址管理和路由选择。**关注的是端与端之间的路径。 |
| 4> 数据链路层 | **负责设备之间数据帧的传送和识别。**关注的是两个相邻节点之间的数据传输情况。 |
| 5> 物理层 | **负责光电信号的传递方式。**是用于网络通信的硬件设备。 |
| 实际上TCP/IP五层模型就是将OSI七层模型中的上三层结合在一起了。 ||

++图示演示模型分层:++

4)协议分层应用的经典网络设备

|-----|----------------------------------------------------------------|
| 主机 | 主机的操作系统内核实现了从传输层到物理层的内容,同时主机上的应用程序则是处于应用层,TCP/IP五层模型都在主机上有所实现。 |
| 路由器 | 实现了从网络层到物理层,即TCP/IP模型的下三层。 |
| 交换机 | 实现了从数据链接层到物理层,即TCP/IP模型的下二层。 |
| 集线器 | 只实现了物理层。 |
| 随着网络设备技术的发展,现在的路由器和交换机的应用层级越来越高,出现了应用于三四层的交换机和四层的路由器等。 ||


五、封装和分用

1)封装和分用的概念

|-------------------------------------------------------------------------------------|
| 不同层级的数据包称谓不同,在传输层的称为段(segment),在网络层称为数据报(datagram),在链路层称为帧(frame)。 |
| 应用层数据发送时,会从应用层到物理层,逐层处理数据。这里的处理指的是每层协议会在数据上增加数据首部(header),这称为封装(Encapsulation)。 |
| 首部信息包含首部长度,荷载(payload)长度,端口信息,上层协议等内容。 |
| 数据封装完成后发送,经过传输介质到达目的主机,再由每层协议逐层解析对应层级的首部,最后得到源主机应用层发送的数据,这称为分用。 |

++图示演示封装和分用:++


阅读指针 -> 《 网络编程和 Socket 套接字 》

<JavaEE> 网络编程 -- 网络编程和 Socket 套接字-CSDN博客简单接受了网络编程的概念和网络编程需要使用的套接字--Sockethttps://blog.csdn.net/zzy734437202/article/details/135027478

相关推荐
邪恶的贝利亚1 小时前
FFMEPG常见命令查询
linux·运维·网络·ffmpeg
只会写Bug的程序员2 小时前
面试之《websocket》
网络·websocket·网络协议
christine-rr2 小时前
【25软考网工笔记】第二章 数据通信基础(1)信道特性 奈奎斯特 香农定理
网络·信息与通信·信号处理·软考
挣扎的蓝藻3 小时前
使用 Python 扫描 Windows 下的 Wi-Fi 网络实例演示
网络·windows·python
无名之逆3 小时前
[特殊字符] Hyperlane:为现代Web服务打造的高性能Rust文件上传解决方案
服务器·开发语言·前端·网络·后端·http·rust
EasyDSS4 小时前
国标GB28181视频平台EasyCVR如何搭建汽车修理厂远程视频网络监控方案
网络·音视频
左灯右行的爱情4 小时前
HTTP 协议-应用层
网络·网络协议·http
你不是我我4 小时前
HTTP 教程 : 从 0 到 1 全面指南 教程【全文三万字保姆级详细讲解】
网络·网络协议·http
cyz1410015 小时前
树莓派4B配置wifi热点,可访问http协议
linux·网络·windows·后端·网络协议·http·树莓派
xinxinhenmeihao6 小时前
如何给路由器配置代理IP?更改网络ip地址时出现错误怎么解决?
网络·tcp/ip·智能路由器·ip地址