笔记:linux必备网络基础概念和以太网技术基础


由于后面可能需要对交换机进行一些配置,所以也是临时学习一下iptables的相关配置,以及一些基本的网络知识,下面就是我看到一些资料做的一些总结,希望能帮助到一些像我这样的新手。


MTU:最大传输单元(1500type)

解决资源争夺:介质的访问控制 MAC(Media Access Control)算法

以太网使用的算法:CSMA/CD(Carrier Sense Multipath Access)载波侦听
多路访问
冲突检测
                          怎么检测:A在发送数据前先查看线路是否忙,如果不忙,则立即发送数据,并且边发送边侦听,如果发现冲突了,就立即撤退,等待一段时间再检测

隔离冲突域:网桥->交换机

交换机:(存储芯片《flash芯片》,存储数据库(每个交换机上所连接的主机MAC地址))
发现A和B在同一总线上就不再转发了
怎么知道哪个主机在哪个接口上:MAC表(学习阶段,根据报文源地址来学习的)
如果不知道需要发送到哪个接口:如果发现没有B,交换机向每个接口发送数据,将数据包发送到网络中,当B发现数据包,回应发送到交换机,交换机发现B接口,这样就知道B的接口了,当下次发送时交换机就知道了B的接口。
交换机怎么实现网络隔离的:1.交换机必须知道网络中有哪些主机      

广播域:收件地址为全1的地址(所有人都能接受到)

CRC:循环冗余校验码(比较报文发送是否正确)
告诉报文是否有效数据

报文:源地址,目标地址,有效数据长度,校验码     (协议)解决A和B传递的报文
广播风暴:导致网络无法通信          解决方法:隔离广播域(交换机)

如果A和B被交换机隔离(分割成许多小网络,已经隔离广播域,无法发送广播包),要解决通信怎么办?
答:可以在报文中加入一段网络号    报文:
源地址,目标地址,有效数据长度,校验码+网络号

怎么知道自己的网络,怎么知道对方和自己不在一个网络?
答:根据网络号不一样,交换机可以通过学习或者配置可以学习到自己或者对方所连接的网络    源网络,目的网络的标记而不是MAC的标记了

报文:源ip,目标ip(基于源MAC地址)源MAC ,目标MAC+网络号
进行报文的拆卸和包装

ip地址:由网络地址(即网络号定义在哪个网络)和主机号组成
路由怎么通过ip地址知道网络地址?
通过mask掩码

网络间的通信:根据源ip和目标ip
本地键的通信:源MAC和目的MAC

发送给B的哪一个进程:还需要在报文中加入源端口号(进程号)和目标端口号(进程号)

笔记:linux必备网络基础概念和以太网技术基础的更多相关文章

  1. Exynos4412 IIC总线驱动开发(一)—— IIC 基础概念及驱动架构分析

    关于Exynos4412 IIC 裸机开发请看 :Exynos4412 裸机开发 —— IIC总线 ,下面回顾下 IIC 基础概念 一.IIC 基础概念 IIC(Inter-Integrated Ci ...

  2. Podman容器技术基础

    Podman容器技术基础 目录 Podman容器技术基础 简介 安装 基础命令 简介 Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用.Podman 提供与 Docker ...

  3. Linux实战教学笔记19:Linux相关网络知识梳理

    第十九节 Linux相关网络知识梳理 标签(空格分隔): Linux实战教学笔记-陈思齐 一,前言 一个运维有时也要和网络打交道,所以具备最基本的网络知识,对一个运维人员来说是必要的.但,对于我们的工 ...

  4. 网络虚拟化之linux虚拟网络基础

    1 linux虚拟网络基础 1.1 Device 在linux里面devic(设备)与传统网络概念里的物理设备(如交换机.路由器)不同,Linux所说的设备,其背后指的是一个类似于数据结构.内核模块或 ...

  5. Java基础复习笔记系列 九 网络编程

    Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...

  6. linux设备驱动归纳总结(一)内核的相关基础概念【转】

    本文转载自:http://blog.chinaunix.net/uid-25014876-id-59413.html linux设备驱动归纳总结(一):内核的相关基础概念 xxxxxxxxxxxxxx ...

  7. 【转】Pro Android学习笔记(二):开发环境:基础概念、连接真实设备、生命周期

    在Android学习笔记(二):安装环境中已经有相应的内容.看看何为新.这是在source网站上的Android架构图,和标准图没有区别,只是这张图颜色好看多了,录之.本笔记主要讲述Android开发 ...

  8. Kubernetes 学习笔记(一):基础概念

    个人笔记,仅本人查阅使用,不保证正确. 零.微服务 微服务架构专注于应用解耦合,通过将应用彻底地组件化和服务化,每个微服务只包含一个非常小的功能,比如权限管理.日志收集等等.由这一组微服务组合起来,提 ...

  9. 【miscellaneous】 GStreamer应用开发手册学习笔记之基础概念介绍

    第3章. 基础概念介绍 本章将介绍GStreamer的基本概念. 理解这些概念对于你后续的学习非常重要,因为后续深入的讲解我们都假定你已经完全理解了这些概念. 3.1. 元件(Elements) 元件 ...

  10. 【Linux开发】linux设备驱动归纳总结(一):内核的相关基础概念

    linux设备驱动归纳总结(一):内核的相关基础概念 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...

随机推荐

  1. 前端复习之DOM、BOM

    BOM VS DOM: 1 BOM:浏览器对象模型(API),专门操作浏览器窗口的API 2 没标准! 3 DOM:文档对象模型(API),专门操作网页内容的API 4 可以对网页中任意对象,做任意修 ...

  2. springboot修改事务隔离级别

    [SpringBoot]事务的隔离级别.Spring的事务传播机制_51CTO博客_springboot事务隔离级别

  3. 有关C++数据结构

    1.临时变量的访问速度远远大于成员变量. 2.C++中唯一一种函数返回值可以做左值的就是引用,本质上也是指针. 3.成员函数末尾加const,表示只读成员函数,不能修改成员变量的值.只读成员函数仅仅用 ...

  4. keshe

    keshe 发送方a 代码: package org.example; import cn.hutool.core.util.CharsetUtil; import cn.hutool.core.ut ...

  5. vs2019远程调试win7系统的程序

    vs2019远程调试   一.安装vs2019远程调试工具 首先让调试的电脑(也就是不安装vs2019的电脑),安装vs2019远程调试工具:VS_RemoteTools.exe. 网址:进行下载.h ...

  6. 几行代码,把zip文件直接破解

    几行代码,把zip文件直接破解,不想讲解了,如果要使用就直接复制吧,讲解挺累的 import itertools import zipfile import os filename = "z ...

  7. Vscode 界面语言换成中文

    作为编译器,Visual Studio Code是非常多能化的,但是界面英文对于我这种菜鸟新手造成了很大的困扰. 所以切换成中文更方便. Ctrl+shift+x   在左侧出现"扩展&qu ...

  8. k8s 关于pull image failed 问题

    问题描述: Failed to pull image "nginx": rpc error: code = Unknown desc = failed to pul 解决办法: 1 ...

  9. Android笔记--案例:登录界面以及登录逻辑

    登录界面的实现 就是说,界面的绘制,并没有什么难度,只要控制好空间的分配就可以了 登录的逻辑实现 获取验证码.忘记密码的界面跳转.登录的实现: 确认文本框的输入内容是否符合题意:

  10. 全网最详细中英文ChatGPT接口文档(三)30分钟快速入门ChatGPT——资源库

    目录 Python library(Python库) Node.js library(Node.js库) Community libraries 社区图书馆 C# / .NET Crystal Go ...