当前位置: 首页 > news >正文

[JAVAEE] 网络基础

目录

一. IP Port

二. 网络协议

三. 五元组

四. 协议分层

五. OSI七层模型

六. TCP/IP五层模型

七. 其他补充

八. 总结


一. IP Port

IP地址: 标记网络中一台设备的位置, 即用来定位主机的网络地址.

IP地址是一个32位的二进制数, 被分割成4个 "八位的二进制数".

例如: 00000000.00000000.00000000.00000000.

通常用点分十进制的方法表示, 即a.b.c.d.

例如: 127.0.0.1

所以, IP地址表示的最大范围是, 255.255.255.255  (2^8-1)

端口号: 区分一台主机上的不同应用程序, 即用来定位主机上的进程.

端口号是0~65535之间的数字. (2^16-1)

端口号之间存在竞争的关系.


二. 网络协议

网络协议, 简称协议. 是通信双方发送/接受数据的约定, 是双方共同的规范.

最终体现为网络上传输的数据包的格式


三. 五元组

在TCP/IP协议(后面介绍)中, 用五元组来标记一个网络通信:

源IP: 标识源主机.

源端口: 标识源主机中此次网络通信发送数据的进程.

目的IP: 标识目的主机.

目的端口: 标识目的主机中此次网络通信接收数据的进程.

协议:标识发送进程和接收进程双方约定的数据格式.


四. 协议分层

每一个层次, 定义不同的协议.(相同层次, 协议相同)

同一层之间的设备通讯, 不需要关注底层是如何实现的, 只需要调用底层的接口进行信息传输即可.

注意: 不能够跨层交互, 而是每两层之间进行交互.

协议分层的好处: 1. 封装 2. 解耦合

分为使用方和提供方:

对于使用方来说, 不需要关系接口内部是如何实现的, 只需要会使用即可.

对于提供方来说, 利用封装的特性, 隐藏了接口内部的实现细节, 对外只提供一些接口.

  

 


五. OSI七层模型

OSI open system interconnection, 即开放系统互连.


六. TCP/IP五层模型

但是OSI七层模型既复杂也不使用, 因此使用更多的还是 TCP/IP五层模型.

应用层: 负责应⽤程序间沟通,如简单电⼦邮件传输(SMTP)、⽂件传输协议(FTP)、⽹络远 程访问协议(Telnet)等。我们的⽹络编程主要就是针对应⽤层.

传输层: 负责两台主机之间的数据传输。如传输控制协议 (TCP),能够确保数据可靠的从源主机发 送到⽬标主机.

网络层: 负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识⼀台主机,并通过路由表 的⽅式规划出两台主机之间的数据传输的线路(路由)。路由器(Router)⼯作在⽹路层。

数据链路层: 负责设备之间的数据帧的传送和识别。例如⽹卡设备的驱动、帧同步(就是说从⽹线上 检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就⾃动重发)、数据差错校验等⼯作。 有以太⽹、令牌环⽹,⽆线LAN等标准。交换机(Switch)⼯作在数据链路层。

物理层: 负责光/电信号的传递⽅式。⽐如现在以太⽹通⽤的⽹线(双绞 线)、早期以太⽹采⽤的的同 轴电缆(现在主要⽤于有线电视)、光纤,现在的wifi⽆线⽹使⽤电磁波等都属于物理层的概念。物理 层的能⼒决定了最⼤传输速率、传输距离、抗⼲扰性等。集线器(Hub)⼯作在物理层

一些网络设备所在分层:(重要)

集线器: 物理层

交换机: 物理层, 数据链路层

路由器: 物理层, 数据链路层, 网络层

主机: 物理层, 数据链路层, 网络层, 传输层 


七. 其他补充

1. 序列化: 结构化的数据 => 二进制/字符流

    反序列化: 二进制/字符流 => 结构化的数据

2. 数据报/包 = 报头 + 载荷

    报头中存储的是IP/Port, 载荷中存储的是数据信息.


八. 总结

1. IP地址和端口号 IP定位主机的网络地址, 端口号定位主机中进程

2. 网络协议, 通信双方发送/接收数据的约定, 共同遵守的规范.

3. 五元组(源ip, 源端口, 目的ip, 目的端口, 网络协议)

4. 协议分层(封装, 解耦合)

5. OSI七层模型, TCP/IP五层模型

6. 数据包 = 报头 + 载荷 (报头中存储的是IP/Port, 载荷中存储的是数据信息)

7. 序列化, 反序列化


http://www.mrgr.cn/news/67792.html

相关文章:

  • 线性代数(第一章:行列式)
  • 解锁炎症和肿瘤免疫治疗新靶点:TREM1&TREM2
  • 软件开发项目管理:实现目标的实用指南
  • 什么是电子邮件营销软件?最全百科
  • Android笔记(三十一):Deeplink失效问题
  • 如何用ChatGPT结合Python处理遥感数据
  • 文件系统和日志管理
  • C++之SET容器
  • 大规模地图构建的细粒度高分辨率卫星数据集OpenSatMap(3787张高分辨率卫星图像)0.15-0.3m
  • 线上3D展厅能实现哪些交互效果?
  • vue2 pdf 链接地址打开
  • 数据结构——双链表
  • 双11疯狂凑单:累坏买家,坑惨卖家
  • 基于TRIZ的教育机器人功能创新
  • 动漫风格大模型和lora推荐
  • 基于 ESP AT 固件使用 BLE 静态配对码完成安全连接和通信
  • 《清宫辞Ⅱ》开机:陈欣予旗装惊艳回归 重新演绎宫闱传奇
  • 树状数组浅谈
  • 论文阅读:基于语义分割的非结构化田间道路场景识别
  • 100种算法【Python版】第55篇——Delaunay三角剖分之Bowyer-Watson算法
  • SSH实验3拒绝root用户远程登录
  • 2024.11.6:艾灸
  • hdmi介绍及DRM实现
  • 《现代网络技术》读书笔记:需求和技术
  • 年入百万:从初中辍学到 50 万读者!
  • audacity 保存中文文件保存报错问题解决