学习计算机网络(三)——IP地址

news2024/9/22 21:25:57

一、IP协议(IPV4、IPV6)

表示形式(两种):

点分十进制、二进制

地址被点分为4个部分,每个部分8位,总共32位。

A、B、C类地址都是单播地址(一对一通信),D类地址用于多播(一对多通信),E类地址保留为以后使用。IP地址中的全0表示本网络,全1表示本地软件环回测试本主机进程之间的通信。

首位网络标识主机标识网络个数
A0高8位(0~127)低24位()2^7 - 2
B10高16位()低16位
C110高24位低8位
D1110高32位
E1111

二、广播、多播

广播是向所有设备发送信息,而多播是向特定的一组设备发送信息。多播相比广播更具针对性和效率,能更好地适应一些特定的应用场景。

(1)广播(Broadcast)

广播是指将信息同时发送给网络中的所有设备。在网络中,广播地址通常用于在特定子网内实现一对所有的通信。

例如,在 IPv4 中,子网内的广播地址是该子网的最后一个地址。如果子网掩码是 255.255.255.0,IP 地址为 192.168.1.100 的主机所在子网的广播地址就是 192.168.1.255 。

广播优点:能够快速将信息传递给子网内的所有设备,但缺点是可能会造成网络带宽的浪费,特别是在大型网络中,如果大量使用广播可能会导致网络拥塞。

(2)多播(Multicast)

多播是将信息发送给一组特定的设备,这些设备被称为多播组。

多播优点:

可以有效地节省网络带宽,因为只有加入了特定多播组的设备才会接收和处理多播数据。

应用场景:

例如,在视频会议应用中,多个参与者可以组成一个多播组,服务器只需向该多播组发送一份数据,而不是分别向每个参与者发送单独的数据。

多播需要网络设备(如路由器)支持多播协议,如 IGMP(Internet Group Management Protocol,互联网组管理协议)来管理多播组成员的加入和离开。

三、子网掩码

子网掩码是一个 32 位的二进制数字,用于将 IP 地址划分成网络地址和主机地址两部分。

主要作用:

确定一个 IP 地址所属的网络范围。通过与 IP 地址进行逻辑与运算,可以得到网络地址。

例如,对于一个 IP 地址 192.168.1.50,子网掩码为 255.255.255.0,将它们进行逻辑与运算(逐位进行与操作):

IP 地址:  11000000.10101000.00000001.00110010
子网掩码:11111111.11111111.11111111.00000000
结果(网络地址):11000000.10101000.00000001.00000000  即 192.168.1.0

子网掩码的取值决定了网络的规模和子网的划分。常见的子网掩码有:

  • 255.0.0.0 :这表示一个 A 类网络,网络规模较大。
  • 255.255.0.0 :这是 B 类网络的子网掩码。
  • 255.255.255.0 :常用于 C 类网络。

子网掩码的合理设置可以提高网络的效率和安全性,便于网络的管理和资源分配。比如,一个公司可以根据部门或地理位置划分不同的子网,方便进行流量控制和访问权限管理。

假设一个公司有多个部门,销售部、研发部和财务部,通过设置不同的子网掩码,可以将它们划分在不同的子网中,实现不同的网络策略和安全控制。

四、路由机制

路由机制是指在计算机网络中,用于确定数据从源节点到目标节点传输路径的过程和方法。

主要作用:

确保数据能够高效、准确地在网络中传输,避免数据的丢失和混乱。

路由机制的工作原理步骤:

  1. 路由发现:网络中的路由器通过各种协议(如 RIP、OSPF、BGP 等)获取网络拓扑信息,了解网络中各个节点和链路的连接情况。
  2. 路由计算:根据获取的拓扑信息和路由算法(如最短路径算法、链路状态算法等),计算出到达不同目标网络的最佳路径。
  3. 路由表维护:路由器将计算得到的最佳路径信息存储在路由表中,路由表包含了目标网络地址和对应的下一跳路由器或出站接口。
  4. 数据转发:当接收到数据包时,路由器根据数据包的目标地址查找路由表,确定数据包的转发方向,将其发送到下一跳路由器或直接发送到目标节点。

例如,在一个简单的网络中,有三个路由器 R1、R2 和 R3,以及三个子网 A、B 和 C。R1 知道如何到达子网 A 和 B,R2 知道如何到达子网 B 和 C,R3 知道如何到达子网 A 和 C。当一个数据包从子网 A 要发送到子网 C 时,R1 接收到数据包后,根据其路由表,将数据包转发给 R3,R3 再将其转发到子网 C。

路由机制的优点:

  • 提高网络的可靠性:当某条链路出现故障时,可以自动选择其他可用路径进行数据传输。
  • 优化网络性能:选择最优路径可以减少数据传输的延迟和拥塞。

然而,路由机制也面临一些挑战,如路由环路的避免、网络拓扑变化时的快速收敛等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2038985.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

谷粒商城实战笔记-175~177-商城业务-检索服务-检索查询接口开发

文章目录 一,175-商城业务-检索服务-检索查询参数模型分析抽取二,176-商城业务-检索服务-检索返回结果模型分析抽取三,177-商城业务-检索服务-检索DSL测试-查询部分四,178-商城业务-检索服务-检索DSL测试-聚合部分问题记录解决方案…

redis散列若干记录

字典 redis本身使用字典结构管理数据 redis使用hash表实现字典结构 使用了什么hash算法 使用SipHash算法,该算法能有效防止Hash表碰撞,并有不错的性能 hash冲突怎么解决 使用链表法解决hash冲突 hash表如何扩容 渐进式扩容,不会引起线程长期阻…

趣味算法------可截断素数

目录 题目描述: 思路解析: 质数判断函数: 反转函数: 右截断素数判断函数: 左可截断素数: 具体代码: 题目描述: 左截断素数是不包含 0 位的素数,当连续删除第一个数…

大四生都在的用8款AI论文生成器在线网站!

在当前的AI技术浪潮中,智能AI写作工具已经成为了学术研究和论文撰写的重要助手。对于大四生来说,选择合适的AI论文生成器可以大大提高写作效率和质量。以下是8款值得推荐的AI论文生成器在线网站: 一、千笔-AIPassPaPer 这是一款功能全面且高…

花几千上万学习Java,真没必要!(四十六)

Lambda表达式: 测试代码1: package test.lambda; public class LambdaDemo { // 实现Runnable接口的类 static class MyThread implements Runnable { Override public void run() { System.out.println("线程运行中:通过实现Runn…

【智能流体力学】ANSYS Fluent流体仿真基础、深度学习驱动思想及其CAX计算机辅助集成技术

目录 一、CAX计算机辅助集成技术二、计算机辅助工程(CAE)三、SCDM (Species Concentration Display Model) 显示和分析物质浓度分布的模型1. **SCDM概述**2. **主要功能**3. **功能特点**4. **使用步骤**5. **应用实例**6. **优点与限制**四、行业应用五、Fluent 软件功能1. …

Datawhale AI 夏令营 第四期 AIGC Task2

活动简介 活动链接:Datawhale AI 夏令营(第四期) 以及AIGC里面的本次任务说明:Task 2 精读代码,实战进阶 和上次任务一样,链接里的教程非常详细,对小白非常友好,从使用AI助手理解…

网工内推 | 网络、集成工程师,最高17K,NP以上认证优先

01 广东南方新媒体股份有限公司 🔷招聘岗位:网络工程师 🔷岗位职责: 1、负责基础设施运维管理,包括机房环境设备、网络设备、安全设备与服务器等,负责机房设备上架、下架、位置调整、布线等的常规操作。…

day36——homework

二、基于UDP的TFTP文件传输 1)tftp协议概述 简单文件传输协议,适用于在网络上进行文件传输的一套标准协议,使用UDP传输 特点: 是应用层协议 基于UDP协议实现 数据传输模式 octet:二进制模式(常用&am…

数据同步工具DataX

目录 1.概要 2.简介 3.DataX处理异构数据源 4.DataX的框架 5.DataX的核心架构 6.DataX的安装 7.DataX的使用案例 8.mysql同步到mysql案例 1.概要 本篇文件将介绍一款数据同步工具DataX的原理,安装,以及使用。 2.简介 官网连接:https…

STL经典案例(二)——公司招员工

需求:公司招了十个员工ABCDEFGHIJ,公司有五个部门,公司随机给这十个员工分配薪水,并且随机将这十名员工分配到不同的部门。 员工类中成员属性为姓名和工资,成员方法为设置姓名、设置工资、获得姓名、获得工资 部门有五…

Electron 开发桌面应用程序用于对接USB Audio Class协议

开发用于对接USB Audio Class协议的Electron桌面应用程序是一个复杂的任务,可能涉及多个开源库和项目的组合。以下是一些开源项目和库,它们可以帮助你实现这个目标: 1. Electron Electron 是一个用于构建跨平台桌面应用程序的框架。你可以使…

【云原生】Prometheus Pushgateway使用详解

目录 一、前言 二、Pushgateway概述 2.1 什么是Pushgateway 2.1.1 Pushgateway在Prometheus中的位置 2.2 为什么需要Pushgateway 2.3 Pushgateway作用 2.4 Pushgateway 工作原理 2.5 Pushgateway 使用场景 2.6 Pushgateway 优缺点 三、Pushgateway 部署 3.1 二进制安…

[C#]基于C# winform结合llamasharp部署llama3中文的gguf模型

【llmasharp源码】 https://github.com/SciSharp/LLamaSharp 【测试模型】 https://www.modelscope.cn/pooka74/LLaMA3-8B-Chat-Chinese-GGUF.git 【测试通过环境】 vs2019 netframework4.7.2 llamasharp0.15.0 cuda11.7.1cudnn8.8.0 注意测试发现使用cpu推理非常卡&a…

Stable Diffusion绘画 | ControlNet应用-SoftEdge(软边缘):让转绘更柔和

SoftEdge(软边缘) Canny(硬边缘) 有时候捕捉的细节过多,其实有时候并不需要那么多的细节。 例如下图中,围巾上的网格细节全部都被捕捉下来了: 切换到「SoftEdge(软边缘)」,它只重点抓取轮廓边缘,而且线条会比 Canny …

优购电商小程序的设计

管理员账户功能包括:系统首页,个人中心,用户管理,商品分类管理,商品信息管理,留言板管理,订单管理,系统管理 微信端账号功能包括:系统首页,商品信息&#xf…

入门 PyQt6 看过来(项目)26 在线购物-主页面

功能导航页面很简单,就几个按钮功能。效果如下图: 1 主界面 ​ 包含 “商品选购”、”下单结算“、”销售分析“四个按钮以及“功能导航”标题。 2 工程目录 首先先创建工程目录及子目录: ​ 3 代码 主窗口文件为Main.py,其…

第2章 C语言基础知识

第2章 C语言基础知识 1.printf()函数 在控制台输出数据,需要使用输出函数,C语言常用的输出函数为printf()。 printf()函数为格式化输出函数,其功能是按照用户指定的格式将数据输出到屏幕上。 printf(“格式控制字符串”,[输出列表]); 格式控…

C++ 124类和对象_运算符重载_赋值

C 124类和对象_运算符重载_赋值 学习内容 解决自定义对象之间赋值是因析构函数重复释放内存时引发的异常问题 结果 代码 #include<iostream> using namespace std;//cout 在这里&#xff0c;没有它会报错//类和对象_运算符重载_赋值 //学习内容 //解决自定义对…

【Qt】Qt窗口 | 菜单栏QMenuBar

文章目录 一. 菜单栏二. 代码创建&使用菜单栏1. 创建菜单栏2. 在菜单栏中添加菜单3. 创建菜单项4. 在菜单项之间添加分割线5. 添加快捷方式6. 菜单/菜单项添加图标7. 添加子菜单 三. 图形化创建菜单栏 窗口 Qt 中窗口是通过QMainWindow类实现的 QMainWindow 是一个为用户提…