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

24、网络编程基础概念

网络编程基础概念

        • 网络结构模式
        • MAC地址
        • IP地址
        • 子网掩码
        • 端口
        • 网络模型
        • 协议
        • 网络通信的过程(封装与解封装)

网络结构模式
  • C/S结构,由客户机和服务器两部分组成,如QQ、英雄联盟

  • B/S结构,通过浏览器与服务器进程交互,如4399网页游戏

MAC地址
  • 网卡是计算机上用于通信的硬件,而MAC地址就是网卡的地址,每个网卡都有唯一一个MAC地址。MAC地址 由6个部分组成:每个部分 都是一个字节,包含两个16进制数,如 00-16-EA-AE-3C-40
  • 另外,MAC地址又称为 局域网地址、 以太网地址、物理地址或硬件地址
IP地址
  • IP地址是主机或网络的逻辑(虚拟)地址,它 由4个部分组成:每个部分都是一个字节,包含一个10进制数,如:100.4.5.6。它也可以转换为二进制形式:01100100.00000100.00000101.00000110
  • 编码方式
    • A类IP地址:1字节的网络地址,3字节的主机地址。可表示的主机数为256^3 - 2,常用于大型网络。网络地址的第一个位必须为0,因此A类最多表示126个网络(B、C类没有这个限制)
    • B类IP地址:2字节的网络地址,2字节的主机地址。可表示的主机数为256^2 - 2
    • C类IP地址:3字节的网络地址,1字节的主机地址。可表示的主机数为256 - 2=254
    • 特殊网址数字:
      • 0:表示自己,如0.0.0.0
      • 255:广播地址,如(A类)126.123.45.255、(B类)129.123.255.255;或者是用于子网掩码
      • 127:IP地址不能以127作为开头,因为这群IP地址专门用于回路测试,如:127.0.0.1可以代表本机IP地址
子网掩码
  • 作用:屏蔽IP地址的一部分,从而区分它的网络部分和主机部分
  • 分类:
    • 255一类,如255.255.255.0
    • 其他:192.126.130.66/24,表示 192.126.130.66的子网掩码有24个1即255.255.255.0;192.126.130.66/26,表示 192.126.130.66的子网掩码有26个1
  • 具体方法:
    • 求网络部分:对(C类)255.255.255.0 求交集(即&umask)
    • 求主机部分:对(C类)255.255.255.0 取反后求交集(即&~umask)
  • 子网掩码的大小与正常IP地址一样
端口
  • 一般指的是虚拟端口,是主机通信的进出口。由 端口号 来标记,范围是从 0 到 65535(2^16-1)
  • 端口本质上其实是 内存的一个缓冲区,里面运行一个进程。比如,在一个缓冲区(端口)内运行QQ进程,这个缓冲区有一个端口号,外界就可以通过这个端口号与QQ进行通信
  • 类型:
    • 周知端口:范围 从 0 到 1023,表示 已经绑定的端口,用户不能使用。也叫知名端口、公认端口或者常用端口
    • 注册端口:范围 从 1024 到 49151,是用户进程可以使用的端口
    • 动态端口:范围是从 49152 到 65535,它的端口号不是认为指定的,而是系统自动(动态)分配的
  • 注意,一个应用程序可以有多个端口,比如:QQ即可以打电环,也可以发消息,那么QQ就会有多个端口
网络模型
  • OSI七层参考模型(物数网传会表应)

  • TCP/IP四层模型(TCP/IP协议族)

在这里插入图片描述

  • 在 应用层写程序,然后直接调用 传输层和网络层API即可
协议
  • 本质上就是 封装数据的规则,也就是 传输的数据包的格式。双方遵守同一套规则,按相同的方法封装和拆解数据

  • 常见协议:

    • 应用层常见的协议有:

      • FTP协议(File Transfer Protocol 文件传输协议)
      • HTTP协议(Hyper Text Transfer Protocol 超文本传输协议,一般用从 浏览器 向 服务器 请求数据,数据类型包括文本、图片、音频等)
      • NFS(Network File System 网络文件系统)
      • SSH
    • 传输层常见协议有:

      • TCP协议(Transmission Control Protocol 传输控制协议)
      • UDP协议(User Datagram Protocol 用户数据报协议)
    • 网络层常见协议有:

      • IP 协议(Internet Protocol 因特网互联协议)

      • ICMP 协议(Internet Control Message Protocol 因特网控制报文协议,如 ping

        在网络层就使用ICMP)

    • 网络接口层常见协议有:

      • ARP协议(Address Resolution Protocol 地址解析协议,用于查找IP地址对应的MAC地址)
      • RARP协议 (Reverse Address Resolution Protocol 反向地址解析协议,与ARP相反)
  • UDP协议:

在这里插入图片描述

  1. 源端口号即发送数据的端口的端口号
  2. 目的端口号即接收方端口号
  3. 长度:UDP用户数据报的长度,单位是字节,最小值是8 (也就是只有首部)
  4. 校验和:用于检测UDP数据报传输之后是否有错,有错就丢弃
  • TCP协议:

在这里插入图片描述

  • IP协议:

在这里插入图片描述

  • 以太网帧协议

    在这里插入图片描述

    • 中间的数据可以是IP协议,也可以是ARP协议

    • 如果是ARP协议

      • ARP请求:目的物理地址是 广播地址,即ff-ff-ff-ff-ff-ff

      • ARP应答:目的地址就是 原来发出请求的地址

  • ARP协议

在这里插入图片描述

  • ARP协议还需要封装在以太网帧中,才能在以太网中传递
网络通信的过程(封装与解封装)
  • 封装的过程:

在这里插入图片描述

  • 分用(解封装)的过程:

在这里插入图片描述

  • 具体过程

在这里插入图片描述

  • 如何知道目的地的MAC地址?答:根据目的地的IP地址,利用ARP协议得出 目的地的MAC地址,并缓存在主机中,具体过程如图:

    在这里插入图片描述

相关文章:

  • Appscan下载及安装教程
  • Vue3中的Icon理方案
  • OCR第三个方案:PP-OCRv4的初步探索
  • 2015年国家队选拔赛试题改编题
  • 基于卷积神经网络的眼疾识别系统,resnet50,efficentnet(pytorch框架,python代码)
  • 什么是开发者社区(Developer Communities)?
  • OCCT(2)Windows平台编译OCCT
  • 【大模型】微调一个大模型需要多少 GPU 显存?
  • 论文阅读《P​roximal Curriculum for Reinforcement Learning Agents》——提升智能体学习速度的
  • 11 配置Hadoop集群-免密登录
  • OpenBMC:BmcWeb 处理http请求3 字典树查找节点
  • 搜索算法------深度优先搜索
  • 解锁AI潜能:模型上下文协议(MCP)的革新与应用
  • 原生应用与Web应用的融合演进:现代跨平台开发指南
  • 常见集合篇(一):算法复杂度分析,从理论到业务场景的深度解析
  • 2025年江苏公路水运安全员ABC证精选考试题库
  • 【Android Studio】下载安装过程(详细)
  • LangChain4j(2):整合SpringBoot
  • MCP服务:五分钟实现微服务治理革命,无缝整合Nacos/Zookeeper/OpenResty
  • 【QT5 网络编程示例】TCP 通信
  • 户外旅游网站模板/百度推广托管公司
  • 二手网站建设/微信营销的模式有哪些
  • 做网站的价/seo网站培训班
  • ps做字幕模板下载网站有哪些/如何做营销策划方案
  • 滨州网站seo服务/佛山今日头条
  • 网站seo推广的方法/广告网站