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

Linux网络编程(20250301)

网络通信:进行不同主机的进程间通信

解决硬件与软件的互联互通

主机-->交换机-->路由器-->广域网-->路由器-->交换机-->主机

IP地址:区分不同主机

MAC地址:计算机硬件地址

端口号:区分主机上的不同进程

1. OSI七层模型(物数网传会表应)

  1. 应用层:要传输的数据信息,如文件传输,电子邮件等
  2. 表示层:数据加密,解密操作,压缩,解压缩
  3. 会话层:建立数据传输通道
  4. 传输层:传输的方式  --->UDP  TCP   端口号
  5. 网络层:实现数据路由  --->  路由器  ip
  6. 数据链路层:封装成帧,点对点通信(局域网内通信),差错检测  交换机  ARP(地址解析服务)
  7. 物理层:定义物理设备标准,比如网线,光纤等传输介质   比特流  bit  0 1

1.1 四层模型

  1. 应用层:HTTP、HTTPS、FTP、TFTP、MQTT
  2. 传输层:TCP、UDP
  3. 网络层:IP
  4. 网络接口层:网络接口层既是传输数据的物理媒介,也可以为网络层提供一条准确无误的线路(ARP:地址解析服务)

1.2 五层模型

  1. 应用层:HTTP、HTTPS、FTP、TFTP、MQTT
  2. 传输层:TCP、UDP
  3. 网络层:IP
  4. 数据链路层:封装成帧,点对点通信(局域网内通信),差错检测,交换机
  5. 物理层:定义物理设备标准,比如网线,光纤等传输介质   比特流  bit

2. 协议

2.1 应用层协议

  1. FTP:文件传输协议(实现文件上传/下载)
  2. TFTP:简单文件传输协议(实现文件上传/下载)
  3. HTTP:超文本传输协议(实现超文本(集视频、图片、文字于一体的文件类型)传输)
  4. HTTPS:加密版超文本传输协议
  5. MQTT:消息队列遥测传输协议(物联网传输)
  6. DNS:域名解析服务

2.2 传输层协议

  1. UDP:用户数据报协议
  2. TCP:传输控制协议

2.3 网络层

        IP协议
                192.168.1.128(点分十进制)
        IPv4    32位        每一段范围:0-255
        IPv6    128位

3. IP

3.1 网络位与主机位

  • 网络位:该IP地址位于哪个网段(局域网)内,子网掩码全为1的位是ip地址的网络位
  • 主机位:这个网段(局域网)第几台主机,子网掩码全为0的位是ip地址的主机位
  • 子网掩码:用来区分IP地址的网络位和主机位,搭配IP地址使用

3.2 网段号与广播号 

  • 网段号:IP地址网络位不变,主机位全为0(网段内的IP能直接通信)
  • 广播号:IP地址网络位不变,主机位全为1,则为该IP地址的广播号(向广播号发送信息,所有局域网内IP都能收到此信息)

3.3 公有IP与私有IP

  • 公有IP:由电信公司直接分配,并需要付费的IP地址, 可以直接访问internet
  • 私有IP:不能直接访问internet的ip地址

4. 端口号

  • IP地址:区分不同主机
  • 端口号:区分同一主机上的不同进程

端口号:16位,0-65535

作用:唯一的标识符,用于标记一个进程

每一个应用进程都有一个端口号

通讯时用来区分数据包属于哪一个进程 

4.1 分类

        1)任何TCP/IP实现所提供的服务都用1-1023之间的端口号。
        2)端口号从1024-49151是被注册的端口号,被IANA指定为特殊服务使用。
        3)从49152-65535是动态或私有端口号。

4.2 各协议端口号

  • HTTP : 80
  • HTTPS:443
  • FTP:20/21
  • TFPT:69
  • MQTT:1883

5. 网络协议族

        数据的封装与解包

 

相关文章:

  • 三维重建(十五)——多尺度(coarse-to-fine)
  • 六足仿生机器人地形自适应步态规划研究
  • 【PyQt5项目实战分享】基于YOLOv8的车辆轨迹识别与目标检测研究分析软件
  • 一、Redis 基础入门:概述与应用场景
  • Hbase完全分布式安装教程,详细版
  • 字符串相加
  • 迷你世界脚本道具接口:Item
  • 【Java】—— 堆
  • CC++的内存管理
  • import模块到另一个文件夹报错:ModuleNotFoundError: No module named xxx
  • Geotools中获取Shapefile的属性表格字符集编码的一种方法
  • [ruby on rails]ActiveModel源码阅读(Validations)
  • SQL注入的分类靶场实践
  • 【大模型安全】大模型安全概述
  • 常见webshell工具的流量特征
  • 批量修改或设置 Word 标题、主题、标记、作者、总编辑时间等元数据
  • Leetcode 3474. Lexicographically Smallest Generated String
  • 掌握 findIndex、push 和 splice:打造微信小程序的灵活图片上传功能✨
  • windows环境执行composer install出错
  • mac上最好的Python开发环境之Anaconda+Pycharm
  • b2b外贸网站有哪些/旺道seo优化软件怎么用
  • 中山快速做网站服务/山东seo首页关键词优化
  • 网上商城排名/哈尔滨seo关键字优化
  • 网站建设与运营答案/免费建立个人网站官网
  • 谷歌做网站/推广优化网站
  • 鄞州中学网站谁做的/今日国内新闻最新消息